Erreur PHP : Cannot create references to elements of a temporary array expression

L’erreur fatale PHP Cannot create references to elements of a temporary array expression survient par exemple lorsqu’on tente d’assigner une variable par référence au sein d’une boucle foreach alors que le tableau d’entrée est une variable temporaire, c’est à dire générée et interprétée au sein de l’instruction foreach.

La variable n’ayant pas été déclarée et initialisée en dehors de la boucle, l’accès aux références de chaque élément n’est donc pas possible.

Le code ci-dessous illustre un cas de figure où l’erreur survient, notez que les méthodes utilisées sont celles de la classes Active Record du framework CodeIgniter :

La solution

Il suffit de déclarer le tableau d’entrée de la boucle foreach à l’extérieur de celui-ci :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nos partenaires

PrestaShop

PrestaShop nous fait confiance en nous délivrant la certification Platinum qui démontre notre expertise concernant leur logiciel e-commerce.

PayPlug

PayPlug est la solution de paiement française qui simplifie le paiement pour l’ensemble des TPE et PME de l'e-commerce, aussi bien en ligne qu’en magasin.