-1
votes

Tableaux PHP multidimensionnels en boucle et affichent toute la matrice correspondante

J'ai trouvé un problème presque similaire sur ce sujet Tableaux PHP multidimensionnels de boucle Mon tableau est un peu différent mais presque similaire: xxx

i d aime vérifier tous les valeurs de service afin de voir si le numéro saisi par l'utilisateur est valide et existe et affiche le réseau correspondant

voici mon naïve essai: xxx


8 commentaires

Avant d'utiliser foreach boucle, vous devriez vérifier le doc php.net/manual/fr/control-tructures.foras.php


Merci beaucoup Nick. Je ne comprends tout simplement pas pourquoi dans le lien que j'ai posté, il a besoin de TTO Utilisez 3 boucles de foresach imbriquées et je n'ai besoin d'utiliser qu'un seul?


Dans la question que vous avez affichée, l'utilisateur voulait imprimer tous les éléments, subitems et soutièmes. Dans votre cas, vous devez itérer sur un seul niveau $ x ['données'] et imprimer un élément s'il convient.


Avez-vous abandonné?


Bien sûr que non, mais je ne comprends pas pourquoi j'ai eu un vote négatif sur mon post. J'ai vraiment pris le temps de l'écrire le plus clair possible


Je ne sais pas pourquoi non plus. J'essayais simplement de voir si une réponse vous a aidée alors la marquer acceptée ou si vous avez des problèmes ou d'autres questions les poster.


Il a juste oublié de marquer ma réponse. Lol @AbracAdaver (puisqu'il a dit qu'il a résolu son problème à travers mes suggestions dans les commentaires, je suppose). Cela ne me dérange pas si ils l'ont marqué ou non, mais cela aiderait quelqu'un qui a un problème similaire avec moins de tracas dans toutes les réponses.


Non, c'est juste que je ne peux marquer aucun commentaire car j'ai une interdiction de mon profil et je ne comprends pas pourquoi ...


5 Réponses :


0
votes

Presque Droite:

foreach Syntaxe est l'autre tour: foreach ( as $ itérateur) OH, vous devez gérer l'affectation à la variable $ reslt (que j'ai renommée $ trouvée à une raison pour une raison quelconque) un peu différent xxx


3 commentaires

Veuillez ajouter ici une description de ce que vous avez changé dans le code ou où l'erreur était.


Il a changé la déclaration "dans" à "comme" dans les paramètres de forach et ajouté un var_dump ($ record); ligne dans la déclaration si ci-dessous.


OK, mais s'il vous plaît ajouter une description à la publication à ce que vous répondez à la question des lecteurs à l'avenir, et ces personnes pourraient ne pas connaître les raisons de votre suggestion de code.



1
votes

Juste pour le plaisir, en supposant que service est unique: xxx

  • extraire un tableau et indexez-le par Service
  • Vous pouvez maintenant y accéder par $ services [$ bus] ex. $ Services [8000] ['Network'] .

0 commentaires

-3
votes
$found_record = NULL;
// let's assume $x as this array here
foreach($record in $x['data']){
if($record['service'] == $bus){
     $found_record = $record['service'];
      break;
    }
  }
 if($found_record){
   // record found
   var_dump($record);
  }else{
    echo "Not found";
}

1 commentaires

Bienvenue dans le débordement de la pile! Tandis que cet extrait de code peut être la solution, y compris un L'explication aide vraiment à améliorer la qualité de votre message. N'oubliez pas que vous répondez à la question des lecteurs à l'avenir, et ces personnes pourraient ne pas connaître les raisons de votre suggestion de code.



0
votes

Si je reçois votre question, cela devrait être quelque chose comme ceci: XXX

Ce code pourrait être simplifié encore plus loin, mais je ne sais pas ce dont vous avez besoin exactement.

Vous pouvez vérifier le résultat final via Cet exemple .


2 commentaires

Merci beaucoup Markafa, vous êtes le seul à avoir compris ce dont j'avais besoin! Merci beaucoup !


Vous êtes les bienvenus. Je suis heureux d'avoir pu aider. Cela vous a-t-il aidé à résoudre votre problème cependant? Ou avez-vous besoin d'une explication / assistance plus poussée avec votre problème? @john_johnk



0
votes

Ajout sur Johnathon Heindl: (désolé je ne peux pas encore répondre).

Il peut être utile de créer $ trouvé un tableau, au cas où vous trouveriez le même service ayant des réseaux différents. P>

$found=[];
// let's assume $x as this array here
foreach($x['data'] as $record ){
   if($record['service'] == $bus){
       //appends to $found
       $found[]=$record['service'];
   }
}
if(!empty($found){
   // record(s) found
   var_dump($record);
}else{
   echo "Not found";
}


0 commentaires