2 votes

Le paramètre de la fonction PHP est toujours nul dans Wordpress

Je ne suis pas un expert en développement Wordpress PHP mais je ne comprends pas cette situation. Je fais passer une variable par une fonction statique dans la variable $GLOBALS qui contient un tableau. Cette variable, lorsqu'elle est dans la fonction statique, est toujours NULL, mais avant qu'elle n'entre dans la fonction, elle est d'un type valide et s'imprime correctement.

functions.php

$badge_Id = get_comment_meta($comment->comment_ID,"badge_id", true);

   if(strlen($badge_Id) > 0) {
        Cisco_Rewards::add_badge_id($badge_id);
                echo $badge_id; // PRINTS PERFECTLY
   }

récompenses.php

class Cisco_Rewards {

static function add_badge_id($badge_id) {
        if(count($GLOBALS['badge_ids']) == 0) {
            $GLOBALS['badge_ids'] = array();
        }
        echo $badge_id; // WONT PRINT, IS NULL
        array_push($GLOBALS['badge_ids'], $badge_Id);
        print_r($GLOBALS['badge_ids']); // ALWAYS HAS NULL VALUES
    }

2voto

Frosty Z Points 8935

Au lieu de

if(count($GLOBALS['badge_ids']) == 0) {
  $GLOBALS['badge_ids'] = array();
}
echo $badge_id;

essayez

var_dump($badge_id); // to check what it contains at the very beginning of the function
if(!is_array($GLOBALS['badge_ids'])) {
  $GLOBALS['badge_ids'] = array();
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X