我刚刚遇到了一段非常奇怪的 php 代码:
$oink{'pig'} = 1;
var_dump($oink);
$oink{'pig'} = '123123';
echo $oink{'pig'}; /* => 123123 */
echo $oink['pig']; /* => 123123 */
它的工作原理类似于数组,但手册中没有提到。这是什么?
It is手册中提到。{}
只是一个替代语法[]
§ 使用方括号语法访问数组元素 https://www.php.net/manual/en/language.types.array.php#language.types.array.syntax.accessing。从 PHP 7.4.0 开始,此方法已被弃用不再支持从 PHP 8.0.0 开始。
Note:
在 PHP 8.0.0 之前,方括号和大括号可以互换使用来访问数组元素(例如,在上面的示例中,$array[42] 和 $array{42} 都会执行相同的操作)。从 PHP 7.4.0 开始,大括号语法已被弃用,并且从 PHP 8.0.0 开始不再受支持。
弦也一样§ 按字符访问和修改字符串 https://www.php.net/manual/en/language.types.string.php#language.types.string.substr:
可以通过使用方数组括号指定字符串后所需字符的从零开始的偏移量来访问和修改字符串中的字符,如下所示$str[42]
. 为此,可以将字符串视为字符数组。 [...]
注意:在 PHP 8.0.0 之前,出于相同目的,也可以使用大括号访问字符串,如 $str{42} 中所示。从 PHP 7.4.0 开始,此花括号语法已被弃用,并且从 PHP 8.0.0 开始不再受支持。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)