Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> функция list() 
:(
    Опции темы
Vovan222
Дата 23.6.2011, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 9.9.2010

Репутация: нет
Всего: нет



Привет. Есть строка $fio, которая выглядет так:
Код

$fio = "Иванов Иван Иванович";

Ее нужно распарсить в массив. Делаю так:
Код

list($surname, $name, $patronymic) = explode(' ',$fio);

Все прекрасно работает, однако если $fio будет такой:
Код

$fio = "Иванов Иван";

то после выполнения:
Код

list($surname, $name, $patronymic) = explode(' ',$fio);

PHP выдает ошибки:
Код

Severity: Notice

Message: Undefined offset: 2

Filename: index.php

Line Number: 53

Можно ли как-то обойти это?
PM MAIL   Вверх
Shogun
Дата 23.6.2011, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сёгун-сан
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 8.6.2006
Где: Кишинёв

Репутация: 9
Всего: 11



Код

$fio = "Иванов Иван Иванович";

$fio_arr = explod(' ', $fio);

if (sizeof($fio_arr)<3) { $fio_arr[] = ''; }

list($surname, $name, $patronymic) = $fio_arr;

Вариантов много... 
if(sizeof...) { list(...) },
switch(sizeof($fio_arr)) { case 2 list($surname, $name),3 ... list($surname, $name, $patronymic)... }


--------------------
2b || !2b
PM MAIL ICQ Skype   Вверх
NewDima
Дата 25.6.2011, 16:39 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: 10
Всего: 12



Во-первых, list - не функция, а конструкция языка, во вторых:
Код

list($surname, $name, $patronymic) = array_merge(explode(' ', $fio), array(null, null, null));

PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0511 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.