PHP : résoudre l’erreur “Creating default object from empty value”

php-logo

Suite à la mise à jour de PHP, mon fichier d’erreurs du site a commencé à afficher le message suivant :

PHP Warning: Creating default object from empty value in /wp-content/themes/skyminds/functions.php on line 1213

La ligne en question correspond à :

$posts[0]->comment_status = 'closed';

Le problème réside dans le fait que $posts n’est pas explicitement défini et comme les versions récentes de PHP tournent maintenant avec le mode E-STRICT par défaut, on obtient une erreur. Il existe deux solutions – soit mettre :

$posts = new stdClass();

s’il sagit d’un objet, soit mettre :

$posts = array();

s’il s’agit d’une associative array, juste avant la ligne de code incriminée. Dans mon cas, l’array() est la bonne solution.

Rencontrez-vous des défis avec votre site WordPress ou WooCommerce? Laissez-moi les résoudre pour vous.

Discutons des solutions possibles »

Articles conseillés :

1 pensée sur “PHP : résoudre l’erreur “Creating default object from empty value””

  1. Je viens d’avoir cette erreur en passant en prod un site sous codeigniter (aucun warning en dev) et aucune des 2 solutions ne passe malheureusement.
    Est ce que depuis tu aurais trouvé une autre solution supplémentaire?
    Merci

    Reply

Opinions