Je travaille sur une fonction de classe PHP en utilisant foreach sur les chaînes de tableau. Il est utilisé pour interroger la base de données et il devrait retourner un nouveau tableau lorsqu'il est appelé.Retourne un tableau à partir de la fonction de classe foreach
Le code ressemble à ceci:
public function myForeach() {
$arrayOne = $getData;
foreach($arrayOne as $key=>$value){
$query = // query the value in the DB;
}
return $query;
}else {
return false;
}
Je suis assez sûr que je manque quelque chose ici. Ce que je veux que la sortie soit un nouveau tableau de la requête $.
À l'heure actuelle, il retourne un tableau comme:
array(1) { [0]=> string(14) "returnedstring" }
Un tableau de chaînes unique, plutôt que chaque valeur du foreach.
Je veux retourner ceci:
array(2) { [0]=> string(15) "returnedstring1" [1]=> string(15) "returnedstring2"}
Vous êtes * renvoyant * à la première itération de votre boucle 'foreach'. Bien sûr, il ne va que renvoyer une seule valeur – Phil
Votre instruction 'return' d'utilisation dans' foreach' et ce code revient de la fonction après la première itération. Vous devez fusionner ('array_merge') la requête de résultat dans' foreach' et le prochain retour. – ZhukV
Modifier, je viens de l'essayer sans cela, il renvoie toujours une seule chaîne – user3143218