关于字符串警告的PHP文档

时间:2014-01-13 22:55:02

标签: php string

strings的PHP文档中有一部分对我没有意义:

  

非整数类型转换为整数。

这是

的标题
  

按字符串访问和修改字符串

任何人都可以在一段源代码中举例说明这意味着什么?

2 个答案:

答案 0 :(得分:1)

这是指您可以通过位置访问字符串的字符。所以:

$string = 'Example';
echo $string[2]; // a

non-integer types are converted to integer开始,这意味着索引被类型转换为整数:

$string = 'Example';
$string['a'] = $string[(int) 'a'] = $string[0] = 'E';

答案 1 :(得分:0)

这意味着如果您尝试使用非整数值访问该字符串中的字符,则会将其强制转换为整数,如此

$str="foo bar";
echo $str[1]; //outputs 'o'
echo $str[4.5]; //outputs 'b'
echo $str["A"]; //casts to zero, outputs 'f'

第二个将抛出

PHP Notice:  String offset cast occured in program.php on line 4

最后一个将抛出

PHP Warning:  Illegal string offset 'A' in program.php on line 5

Here是演示