#php #coldfusion
#php #coldfusion
Вопрос:
Я изучаю PHP, и мне было интересно, есть ли что-то вроде ValueList() для PHP? Заранее благодарю вас.
$data = Array
(
[0] => Array
(
[id] => 851099
[title] => Iron Maiden
)
[1] => Array
(
[id] => 852099
[orgName] => Judas Priest
)
[2] => Array
(
[id] => 861099
[orgName] => Black Sabbath
)
)
$valueListTitle = ValueList($data.title)
echo $valueListTitle;
который возвращает это: «Iron Maiden, Judas Priest, Black Sabbath»
Комментарии:
1. Вы переходите с CF на PHP или только изучаете PHP?
2. Моя компания переводит все наши приложения ColdFusion на PHP.
3. Я желаю вам удачи. Я видел, как это происходит несколько раз; ни один из них не был таким, как ожидалось изначально. CF далек от совершенства, но в PHP будет много вещей, которые вы оцените за легкость, с которой CF это сделал. Что это за данные? Это результат запроса?
4. Спасибо, Шон, эти данные взяты из запроса.
5. Ваша структура недопустима. Вам нужно перейти
array(0 => array('id'=>1, 'title'=>'test title'))
или использовать более плотный синтаксис в моем ответе ниже.
Ответ №1:
Да, проверьте array_column и implode, чтобы добавить запятые.
Пример использования:
$data = array(
["id" =>1, "title"=>"Iron Maiden"],
["id" =>2, "title"=>"Judas Priest"],
["id" =>3, "title"=>"Black Sabbath"],
["id" =>4, "title"=>"Deep Purple"],
["id" =>5, "title"=>"Rolling Stones"]
);
$valueListTitle = array_column($data, 'title');
$commaSeperated = implode(", ", $valueListTitle);
echo $commaSeperated;
который возвращает это: «Iron Maiden, Judas Priest, Black Sabbath, Deep Purple, Rolling Stones»
Комментарии:
1. Привет, Нико, я обновил информацию о массиве. Ваше предложение не работает с этой обновленной структурой массива. Есть предложения?
2. @user752746 Приведенное выше — это просто простой способ инициализации массива. Вы не можете использовать вывод
print_r
для инициализации массива, потому[0] => 'whatever'
что он не работает, вы должны использовать0 => 'whatever'
. См. php.net/manual/en/function . array.php для получения множества примеров.3. Спасибо за объяснение, я должен работать с вашим предложением с небольшой настройкой!