2017-09-07 5 views
0

Lors de l'utilisation de array_combine, je peux combiner deux tableaux et utiliser la boucle. Dans l'exemple ci-dessous je peux $ title dans mon HTML. Toutefois, si j'essaie d'ajouter un autre tableau à cette solution, il se casse. Mon hôte local n'affiche une erreur autre que « la page ne fonctionne pas « localhost est actuellement incapable de traiter cette demande. »Combiner plus de 2 tableaux Smarty

{foreach array_combine($p_titles, $p_prices, $p_ids) as $title => $price => $id}<!--SOME HTML-->{/foreach} 

Comment combiner 3 ou plusieurs tableaux en utilisant cette méthode.

+0

Changer ce que vous avez posté après que quelqu'un donne en réponse est pas cool. Cela désactive les personnes qui recherchent des requêtes similaires pour trouver la bonne réponse. –

+0

Je suppose que l'étiquetage de la question aiderait les gens à la trouver. Merci pour le conseil. – user3841443

+0

J'ai mis à jour ma réponse pour fournir ce que vous avez demandé. –

Répondre

0

Première de tous, vous avez marqué Javascript cependant ce que vous avez montré en vous la question est PHP.

en second lieu, le array_combine accepte que deux paramètres. Documentation.

pour utiliser array_combine pour trois tableaux font:

$combinedArray = array_combine($p_titles, $p_prices); 
$combinedArray = array_combine($combinedArray, $p_ids); 

Modifier: réponse qui correspond à votre code dans la syntaxe PHP normale.

$result = array(); 

foreach($p_titles as $key => $value) 
{ 
    $result[$value] = array('price' => $p_prices[$key], 'id' => $p_ids[$key]); 
} 

echo($result); 

Vous pouvez accéder à ces données comme celles-ci: $result['title']['price'] ou $result['title']['id'];


Edit 2: Et le code Smarty.

Je ne suis pas familier avec la syntaxe Smarty donc cela pourrait ne pas fonctionner:

{ $result = array(); } 

{ foreach from=$p_titles key=key item=value } 

    { $result[$value] = array('price' => $p_prices[$key], 'id' => $p_ids[$key]) } 

{ /foreach } 
+0

Dans l'exemple donné, j'utilisais la méthode {foreach}. Cependant, puis-je utiliser cela avec votre solution. Créer une variable de chaque tableau comme avant. c'est à dire. {$ title} – user3841443

+0

Je viens de quitter le travail et je suis incapable de mettre à jour ma réponse. Si vous attendez que je rentre à la maison, je serais heureux de vous fournir une réponse qui correspond à votre code. –

+0

Pourriez-vous m'aider? – user3841443