Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Страння фигня с array_search
Форумы портала PHP.SU » » Вопросы новичков » Страння фигня с array_search

Страниц (1): [1]
 

1. difight - 18 Марта, 2014 - 16:38:38 - перейти к сообщению
Имеем строку
CODE (htmlphp):
скопировать код в буфер обмена
  1. Брэнд Код;Артикул;<Описание (производитель)>;<Описание (русское)>;Цена ;Цена РОЗНИЦА;Остаток

Вначале разбиваю её так

дальше пытаюсь найти артикул и остаток

Артикул ищу без проблем
а вот остаток нефига
PHP:
скопировать код в буфер обмена
  1. $count = array_search('Остаток', $line);

однако в ходе вопроса "что за нах" пришел к тому что если у нас столбец "Остаток" не последний, то тогда проблем нет, проблема именно тогда когда этот столбец последний, в чем проблема как её решить ?
2. IllusionMH - 18 Марта, 2014 - 16:49:13 - перейти к сообщению
difight, делайте trim перед explode.
3. difight - 24 Марта, 2014 - 09:15:40 - перейти к сообщению
IllusionMH пишет:
difight, делайте trim перед explode.

К сожалению это не решило проблему....
(Добавление)
difight пишет:
IllusionMH пишет:
difight, делайте trim перед explode.

К сожалению это не решило проблему....

Щам имею
CODE (html):
скопировать код в буфер обмена
  1. артикул;остаток

Артикул получаю, остаток нет... Недовольство, огорчение
4. EuGen - 24 Марта, 2014 - 09:37:37 - перейти к сообщению
Можете также проверить, нет ли "невидимых" символов, разбивая так:

PHP:
скопировать код в буфер обмена
  1. $line = preg_split('/\s*;\s*/', $file[$i], -1, PREG_SPLIT_NO_EMPTY);

- или даже заменив \s на \W в регулярном выражении.

 

Powered by ExBB FM 1.0 RC1