php: empujar a un array que puede o no puede existir
-
20-08-2019 - |
Pregunta
Quiero crear una matriz con un mensaje.
$myArray = array('my message');
Pero el uso de este código, myArray
se sobrescribirá si ya existía.
Si utilizo array_push
, tiene que ya existe.
$myArray = array(); // <-- has to be declared first.
array_push($myArray, 'my message');
De lo contrario, Bink.
¿Hay una manera de hacer el segundo ejemplo anterior trabajo, sin antes solucionar $myArray = array();
?
Solución
Comprobar si existe la matriz primero, y si no es así, crear ... entonces añadir el elemento, sabiendo que la matriz seguramente será definido de antemano:
if (!isset($myArray)) {
$myArray = array();
}
array_push($myArray, 'my message');
Otros consejos
A continuación:
$myArray[] = 'my message';
$ miMatriz tiene que ser una matriz o no establecido. Si se mantiene un valor que es una cadena, entero o un objeto que no implementa ArrayAccess, se producirá un error.
Debe utilizar is_array (), no Isset. Muy útil si myArray se está fijando de una función que devuelve una matriz o una cadena (-1 en caso de error, por ejemplo)
Esto evitará errores si miMatriz se declara como una matriz no en otro lugar.
if(is_array($myArray))
{
array_push($myArray,'my message');
}
else
{
$myArray = array("my message");
}
if ($myArray) {
array_push($myArray, 'my message');
}
else {
$myArray = array('my message');
}
manera OIS' va a funcionar.
o
if (!isset($myArray))
$myArray=array();
array_push($myArray, 'message');