Bloc code et variable

Hello,

Je ne trouve pas comment vérifier une variable passée dans un bloc code.
Pourriez-vous me dire comment vérifier dans les logs (je ne trouve pas) ou si ma syntaxe est bonne:

$myVarConsigne = $scenario->getData('Scenario_check_arret_pac');
$ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, 'http://192.168.1.132/control?cmd=heatpumpir,hitachi,1,2,0,$myVarConsigne,0,0');
        $response = curl_exec($ch);
        curl_close($ch);

Pas tout compris de ta demande, mais si tu veux vérifier quelques choses dans un bloc code, voici un exemple,

if ($value>200) {
  $msg='Il fait jour. ('.$value.')';
} else {
  $msg='Il fait nuit. ('.$value.')';
}

Mais si tu veux rajouter la valeur dans un log, ce serait plutot,

$scenario->setLog('Valeur    :'.$value);

Je t’invite a jeter un oeil sur Jeedom v4 Petits codes entre amis | Jeedom by KiboOst

Mathieu

Je récupère ma variable déclarée dans jeedom dans mon bloc code par:

$myVarConsigne = $scenario->getData('Scenario_check_arret_pac');

Cela me permet de démarrer ma pompe à chaleur avec la température de la consigne:

curl_setopt($ch, CURLOPT_URL, 'http://192.168.1.132/control?cmd=heatpumpir,hitachi,1,2,0,$myVarConsigne,0,0');
        $response = curl_exec($ch);
        curl_close($ch);

Ce que je souhaite voir, c’est si « $myVarConsigne » est bien transposée en « 18 » degrés par exemple.
De ta syntaxe, il faut rajouter les « . » pour la concaténation je suppose.

Pardon, je viens de voir ta réponse après avoir modifié ma précédente réponse, mon ajout devrait répondre à ta question :slight_smile: . Oui, le . est pour la concaténation de chaine.

Mathieu

Il faut aussi que je stop la chaîne de caractère avec le ‹  ›.

Du coup cela me donnerait:
curl_setopt($ch, CURLOPT_URL, 'http://192.168.1.132/control?cmd=heatpumpir,hitachi,1,2,0,'.$myVarConsigne.',0,0');

C’est ce que j’avais mis au début puis finalement modifié en tombant sur un message sur stackoverflow!

Merci de ton aide

Bonjour,
Vous pouvez aussi utiliser des " à la place des ’ pour délimiter une chaine de caractères:

curl_setopt($ch, CURLOPT_URL, "http://192.168.1.132/control?cmd=heatpumpir,hitachi,1,2,0,$myVarConsigne,0,0");

En PHP, quand le délimiteur est une " les variables sont interprétées.

Ok, merci pour l’information.