i ai un tableau de ce type de Array ([0] => 'certaines valeurs' [1] => '')changement élément de tableau vide à une valeur
Je souhaite modifier la elemnt vide d'une matrice à une valeur de 5
comment puis-je faire
grâce
i ai un tableau de ce type de Array ([0] => 'certaines valeurs' [1] => '')changement élément de tableau vide à une valeur
Je souhaite modifier la elemnt vide d'une matrice à une valeur de 5
comment puis-je faire
grâce
Si vous savez à quelle position il est, il suffit de faire:
$array[1] = 5;
Sinon, la boucle à travers elle et vérifier avec ===
for value and type equality:
foreach($array as &$element) { //get element as a reference so we can change it
if($element === '') { // check for value AND type
$element = 5;
}
}
Ce $array[1] = 5;
Vous pouvez utiliser array_map pour cela:
function emptyToFive($value) {
return empty($value) ? 5 : $value;
}
$arr = array_map(emptyToFive, $arr);
PHP 5.3, vous pouvez faire:
$func = function($value) {
return empty($value) ? 5 : $value;
};
$arr = array_map($func, $arr);
EDIT: Si empty
ne correspond pas à vos besoins, vous devriez peut-être changer la condition à $value === ''
selon la suggestion de @ Felix.
Je dirais que «vide» n'est pas la bonne fonction ici. Il retournera aussi true, pour '0',' '0 '' et 'FALSE' qui ne sont probablement pas des valeurs vides dans ce cas. –
Vous pourriez avoir raison, je dirais que cela dépend vraiment des exigences exactes de l'OP. Je l'ai édité en. – karim79
version 5.3
$arr = array_map(function($n) { return !empty($n) ? $n : 5; }, $arr);
Fermeture et ternaire ... Je vous avais mis en garde deux fois si je pouvais. – Entendu
Laquelle de ces versions de PHP utilisez-vous? –