Как то проходя собеседование задали вопрос на засыпку:
<?php
$a = "example";
echo $a[3];
?>
Сказав, что будет ошибка или предупреждение, мне запустили код на компе.Ответ был "m" Хорошо подумал Я. Пришел домой проверил. Действитетельно так
но почему тогда не дает
<?php
$a = "example";
echo count($a);
?>
И выводит 1 ? Хотя по идее должно вывести 7
Спустя 4 минуты, 15 секунд (29.03.2012 - 10:51) Winston написал(а):
Цитата (tp123 @ 29.03.2012 - 10:47) |
И выводит 1 ? Хотя по идее должно вывести 7 |
count - количество элементов в массиве
для получения длины строки strlen|mb_strlen
Спустя 2 минуты, 6 секунд (29.03.2012 - 10:53) nugle написал(а):
tp123
потому что это не массив, а строка
$a[3] - вызывает четвертую букву, так не только в php реализовано
потому что это не массив, а строка
$a[3] - вызывает четвертую букву, так не только в php реализовано
Спустя 1 час, 55 минут, 59 секунд (29.03.2012 - 12:49) inpost написал(а):
Спорный вопрос, ведь в JS каждый символ как раз и есть элемент массива, если я не ошибаюсь, а вот в php - нет. Хотя работают одинаково выборка какого-то символа.
Поставь UTF и русский текст - выборки такой не получится.
А значит выбираем не элемент массива.
Поставь UTF и русский текст - выборки такой не получится.

Спустя 2 часа, 28 минут, 3 секунды (29.03.2012 - 15:17) zeromind написал(а):
во, я на таком и сам бы подловился 
обычно ключи юзаю при массивах, но такую запись видал пару раз)

обычно ключи юзаю при массивах, но такую запись видал пару раз)
Спустя 5 часов, 32 минуты, 32 секунды (29.03.2012 - 20:50) inpost написал(а):
Это достаём байт определённый!
_____________