2014-01-13 2 views
0

Существует часть в PHP документации strings, что не имеет смысла для меня:PHP Документация по струнам предупреждения

Нецелочисленных типов преобразуются в целое число.

Это под заголовком

доступа Струнный и модификации по характеру

Может кто-нибудь дать пример того, что это означает, что в части исходного кода?

+2

'$ строка = 'ABC'; $ string [2.5] = 'D'; echo $ string; ' –

ответ

1

Это относится к тому факту, что вы можете обращаться к символам строк по положению. Итак:

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

С non-integer types are converted to integer, что означает, что индексы типа отлиты в целые числа:

$string = 'Example'; 
$string['a'] = $string[(int) 'a'] = $string[0] = 'E'; 
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 демонстрационный

Смежные вопросы