Что такое сокращенное обозначение массива в PHP?
Я пытался использовать (не работает):
$list = {};
Это будет идеально, если вы дадите ссылки на некоторую информацию о других сокращениях для PHP.
Обновить:
Начиная с PHP 5.4.0 был введен сокращенный синтаксис для объявления массивов:
$list = [];
Предыдущий ответ:
Нет. Только $list = array();
Но вы можете просто добавлять элементы.
<?php $list[] = 1; $list['myKey'] = 2; $list[42] = 3;
Это нормально, что касается PHP. Вы даже не получите E_NOTICE для неопределенных переменных .
Ошибка уровня E_NOTICE выдается в случае работы с неинициализированными переменными, но не в случае добавления элементов к неинициализированному массиву.
Что касается стенографических методов, то их много разбросано. Если вы хотите найти их, просто прочитайте «Руководство» .
Некоторые примеры, просто для вашего удовольствия:
$arr[]
сокращение для array_push
. foreach
echo $string1, $string2, $string3;
+
elseif
$name = 'Jack'; echo "Hello $name";
$name = 'Jack'; echo "Hello $name";
ДА, он существует !!
Извлечен из другого вопроса о переполнении стека:
Укороченный синтаксис для массивов был пересмотрен, принят, и теперь он будет выпущен с помощью PHP 5.4
Применение:
$list = [];
Ссылка: PHP 5.4 Short Hand for Arrays
Также можно определить контент внутри [] следующим образом:
$array = ['vaue1', 'value2', 'key3'=>['value3', 'value4']];
Это будет работать только в php5.4 и выше.
Их нет в PHP 5.3.
Нет, это было предложено и отвергнуто сообществом, поэтому на данный момент единственным синтаксисом для массивов является array () .
Единственный способ определить массив в php – это построить конструкцию языка array()
. PHP не имеет сокращений для литералов массивов, как это делают некоторые другие языки.
Я просто взорву строки в массив:
$array = explode(",","0,1,2,3,4,5,6,7,8,9,10");
Вы можете объявить свой массив следующим образом:
$myArray1 = array(num1, num2, num3); $myArray2 = array('string1', 'string2', 'string3'); $myArray3 = array( 'stringkey1'=>'stringvalue1', 'stringkey2'=>'stringvalue2'); $myArray4 = array( 'stringkey1'=>numValue1, 'stringkey2'=>numValue2); $myArray5 = array( numkey1=>'stringvalue1', numkey2=>'stringvalue2'); $myArray6 = array( numkey1=>numValue1, numkey2=>numValue2);
У вас может быть столько встроенных массивов, сколько вам нужно.