Как разобрать строку на части?

193
22 сентября 2017, 20:43

Имеется строка по типу:

user1, user2, user3, user4, user5

Как для каждого значения в строке создать новую переменную?

Например:

$variable = "user1";
$variable = "user2";

В строке могу содержаться любые значения через запятую.

Благодарен за любую помощь!

Answer 1

При необходимости ещё можно после ф-ции array_combine() выполнить extract($users); и тогда в текущей области видимости появятся одноимённые переменные, значения которых будут совпадать с их именами.

$str = 'user1, user2, user3, user4, user5';
$users = explode(', ', $str);
$users = array_combine($users, $users);
echo '<pre>'; var_dump($users); echo '</pre>';
/*
array(5) {
  ["user1"]=>
  string(5) "user1"
  ["user2"]=>
  string(5) "user2"
  ["user3"]=>
  string(5) "user3"
  ["user4"]=>
  string(5) "user4"
  ["user5"]=>
  string(5) "user5"
}
*/
Answer 2

Как вариант.

$string  = "user1, user2, user3, user4, user5"; 
$array = explode(", ", $string); 
 
extract( $array, EXTR_PREFIX_ALL, "my_prefix_");

Оригинал примера тут.

READ ALSO
Проблемы с регулярным выражением php

Проблемы с регулярным выражением php

здравствуйте, есть регулярка для проверки ника при регистрации ~^[^-_][a-zA-Z_\-0-9]*$~u но почему-то пользователь может ввести такой #ник , хэштег одобряется...

171
Что такое &ldquo;Правило одного определения&rdquo; (One definition rule)?

Что такое “Правило одного определения” (One definition rule)?

Что такое "Правило одного определения"?

301
Вылет программы C++(Segmentation fault)

Вылет программы C++(Segmentation fault)

После появления запроса на ввод чисел программа вылет с такой ошибкой: Segmentation fault (core dumped)

243
Запуск exe с флеш носителя

Запуск exe с флеш носителя

Добрый день! У меня такая проблема компилирую exe, который необходимо запустить с флеш носителя на другом PCПри запуске, АВ Avast пропускает исполняемый...

246