为了账号安全,请及时绑定邮箱和手机立即绑定

还是有些不理解的是用 {} 对数组索引有什么特定的意义吗?

还是有些不理解的是用 {} 对数组索引有什么特定的意义吗?

PHP
守候你守候我 2023-04-04 14:10:58
发现在php中用 [] 和 {} 都可以对数组进行索引,如<?php$arr = array("a","b","c");echo $arr{1};echo $arr{2};输出:bc在看 php 代码时数组都是通过 [] 进行索引的,但是有时也会用 {}
查看完整描述

2 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

<?php$array = array(    "foo" => "bar",    "bar" => "foo",
);// 自 PHP 5.4 起$array = [    "foo" => "bar",    "bar" => "foo",
];?>


查看完整回答
反对 回复 2023-04-07
?
忽然笑

TA贡献1806条经验 获得超5个赞

php为什么会允许用花括号在字符串里取字符呢,这我也不知道?也许是为了兼容某种奇怪的语法,也许是某个开发者心血来潮给支持了,也许是某些历史原因,反正它就在那里了,这门语言充满了各种难以解释的特性,你得习惯。

我们知道在php里字符串其实跟数组在访问方法上是一致的,因此有人就会试试既然字符串可以用花括号取,那么数组可不可以呢?结果一试还真可以,因此黑客们为了秀一下自己的发现,就会在程序中使用这种非正式的写法。

而不明所以者,以为这么写会给程序赋予某种神奇的力量(这很正常,每个人都有过这种时候。因为这种写法看起来挺酷的,而且它很冷僻,好东西总是不为所知的,也许它有性能的提高?管它呢,先写着)。

其实它们的作用是完全一样,而且我建议你一直使用方括号来访问数组,因为说不定哪天某人偷偷就把这个特性给干掉了:)


查看完整回答
反对 回复 2023-04-07
  • 2 回答
  • 0 关注
  • 105 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信