PHP : foreach par référence en PHP4
Résolu
bolbo
Messages postés
22
Statut
Membre
-
macgawel Messages postés 676 Statut Membre -
macgawel Messages postés 676 Statut Membre -
Bonjour,
J'ai un problème avec un foreach en PHP4.
J'ai vu sur PHP.net :
qui permet de modifier la valeur du tableau $arr, mais ca ne marche que en PHP5.
quelqu'un aurait il une solution équivalente en PHP 4?
Merci d'avance,
Bolbo
J'ai un problème avec un foreach en PHP4.
J'ai vu sur PHP.net :
<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
$value = $value * 2;
}
// $arr vaut maintenant array(2, 4, 6, 8)
?>
qui permet de modifier la valeur du tableau $arr, mais ca ne marche que en PHP5.
quelqu'un aurait il une solution équivalente en PHP 4?
Merci d'avance,
Bolbo
4 réponses
-
En fait, ce que tu veux c'est appliquer une fonction (dans ton exemple, *2) à chaque élément d'un Array ?
La fonction array_map est faite pour toi !function doubler($var) { return $var*2; } $arr = array(1, 2, 3, 4); $arr = array_map('doubler', $arr); -
Salut,
j'ai plus simple :
$arr = array(1, 2, 3, 4); foreach($arr as $cle=>$val){ $arr[$cle]=$val*2; }
et voilà ;) -
Salut,
sans foreach ni passage par reference, tu peux essayer ca :
<?php
$arr = array(1, 2, 3, 4);
$i=0;
$max = count($arr);
while($i<$max)
{
$arr[$i] *=2;
}
?>
A plus -
Salut,
J'ai encore plus simple :) :
$arr = array(1, 2, 3, 4);
foreach($arr as &$val) $val *= 2;
Cette méthode ne fonctionne que depuis PHP 5