|
|
|
| Здравствуйте!
При отработке скрипта вылазит ошибка:
Fatal error: Cannot use string offset as an array
$item = $item[2][$i]; // строка с ошибкой
Что она значит и что сней делать?
Помогите :-)) | |
|
|
|
|
|
|
|
для: kran
(08.02.2006 в 14:07)
| | Она говорит, что нет такого элемента в массиве (именно с таким ключем).
У тебя не верное значение принимает переменная $i либо действительно ничего не присвоено этому ключу массива. | |
|
|
|
|
|
|
|
для: XPraptor
(08.02.2006 в 14:11)
| | неа, просто у него $item не массив | |
|
|
|
|
|
|
|
для: isset
(08.02.2006 в 14:13)
| | PHP не различает массив и не массив.
Если ты присвоил переменной значение с новым ключем, то она становится массивом а первое значение по умолчанию ид [0]. | |
|
|
|
|
|
|
|
для: XPraptor
(08.02.2006 в 14:23)
| | Еще как различает
$str = "str";
echo $str[0][1];
|
| |
|
|
|
|
|
|
|
для: isset
(08.02.2006 в 14:24)
| | Ты не то написал что-то, откуда сразу двумерный массив взялся? Вот напиши и посмотри и запомни на будущее: PHP не различает массив не массив - всё массив когда это удобно.
$str="str";
echo $str[0];
echo $str[1];
echo $str[2]; | |
|
|
|
|
|
|
|
для: XPraptor
(08.02.2006 в 15:18)
| | Вообще-то такой способ доступа к символам строки считается нерекомендованным к применению.
http://www.php.net/manual/ru/language.types.string.php#language.types.string.substr | |
|
|
|
|
|
|
|
для: XPraptor
(08.02.2006 в 15:18)
| | PHP жестко различает массив и строку, не надо.
$a = "string"; является строкой, никак не array и [n] является смещение символа.
$a = array(); является array, никак не строкой и [n] индекс элемента массива.
Откуда двумерный, см. первой пост:
$item = $item[2][$i]; // строка с ошибкой
|
В данном случае предполагается что $item это массив, но она оказалась строкой - поэтому PHP и ругается. | |
|
|
|
|
|
|
|
для: isset
(08.02.2006 в 14:13)
| | Всем спасибо разобрался :-))
Пошел попил чаю... пришел... посмотрел свежим взглядом... действительно не массив :-))
Все исправил. | |
|
|
|