Hay muchas funciones que se pueden usar para crear matrices en casos especiales (por ejemplo, str_split), pero supongo que no es de eso de lo que estás hablando.
Mateo
PHP no lo ha hecho. Pero phpreboot y pihipi proporcionan una nueva sintaxis experimental.
mario
Respuestas:
135
Actualización: a
partir de PHP 5.4.0 se ha introducido una sintaxis abreviada para declarar matrices:
$list = [];
Respuesta anterior:
No lo hay. Solo $list = array();Pero puedes comenzar a agregar elementos.
El error de nivel E_NOTICE se emite en caso de trabajar con variables no inicializadas, pero no en el caso de agregar elementos a la matriz no inicializada.
En cuanto a los métodos abreviados, hay muchos esparcidos por todas partes. Si desea encontrarlos, simplemente lea el manual .
Algunos ejemplos, solo para su diversión:
$arr[]taquigrafía para array_push.
El foreachconstructo
echo $string1, $string2, $string3;
Concatenación de matrices con +
La existencia de elseif
Incrustación variable en cadenas, $name = 'Jack'; echo "Hello $name";
Creo que es mejor escribir 5.4 y superior (en 5.6 funciona). Como nota, es la única forma funcional de declarar una matriz como una constante de clase (por ejemplo, const x = ["a", "b"];) porque la const x = matriz (....) no funciona
La única forma de definir una matriz en php es mediante la array()construcción del lenguaje. PHP no tiene una abreviatura para los literales de matriz como lo hacen otros lenguajes.
Respuestas:
Actualización: a
partir de PHP 5.4.0 se ha introducido una sintaxis abreviada para declarar matrices:
Respuesta anterior:
No lo hay. Solo
$list = array();
Pero puedes comenzar a agregar elementos.<?php $list[] = 1; $list['myKey'] = 2; $list[42] = 3;
Está perfectamente bien en lo que respecta a PHP. Ni siquiera obtendrá un E_NOTICE para variables indefinidas .
En cuanto a los métodos abreviados, hay muchos esparcidos por todas partes. Si desea encontrarlos, simplemente lea el manual .
Algunos ejemplos, solo para su diversión:
$arr[]
taquigrafía paraarray_push
.foreach
constructoecho $string1, $string2, $string3;
+
elseif
$name = 'Jack'; echo "Hello $name";
fuente
$results[] = $row;
significaba.$var = [];
se introdujo con PHP7. ¡No tenía idea de que se remontaba a 5.4!SI, existe !!
Extraído de otra pregunta de Stack Overflow:
Uso:
Referencia: PHP 5.4 Mano corta para matrices
fuente
=>
lugar de:
entre claves y valores.También es posible definir contenido dentro de [] así:
$array = ['vaue1', 'value2', 'key3'=>['value3', 'value4']];
Esto solo funcionará en php5.4 y superior.
fuente
No hay ninguno a partir de PHP 5.3.
http://us.php.net/manual/en/language.types.array.php
fuente
No, fue propuesto y rechazado por la comunidad, por lo que por ahora solo la sintaxis para matrices es array () .
fuente
La única forma de definir una matriz en php es mediante la
array()
construcción del lenguaje. PHP no tiene una abreviatura para los literales de matriz como lo hacen otros lenguajes.fuente
Puede declarar su matriz de la siguiente manera:
$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);
Puede tener tantas matrices integradas como necesite.
fuente
Simplemente exploto cadenas en una matriz como esta:
$array = explode(",","0,1,2,3,4,5,6,7,8,9,10");
fuente