Fonction et variable globale dans un bloc code

bonjour,

je n’arrive pas à déclarer et utiliser des variables globales dans une fonction php d’un bloc code de scenario.

J’ai essayé sans succès :

$var=‹ coucou ›;
function test() {
global $scenario,$var;
$scenario->setLog(’ test > ’ . $var);
}
test();

le resultat est : test >

j’ai aussi essayé global $var=‹ coucou › mais là j’ai une erreur de syntaxe :
[SCENARIO] syntax error, unexpected ‹ = ›, expecting ‹ , › or ‹ ; ›

Quelle est la bonne syntaxe ?

Salut
var toto = ‹ coucou ›;

ca ne marche pas ca donne :
[2020-01-04 20:13:53][SCENARIO] syntax error, unexpected ‹ var › (T_VAR), expecting end of file

Et
$var toto = ‹ coucou ›;

ca marche pas non plus

Je me demande si ce n’est pas le nom de ta variable qui passe pas.
Essaie
$toto = ‹ coucou ›;

j’ai deja essayé avec d’autres nomd

Désolé, je ne vois rien d’autre.
Bonne chance

C’est parce que les variables globales c’est le mal :japanese_ogre:

2 « J'aime »

si tu cherches dans la fonction
un visu scenario « log » ça va être un peu plus coton

enfin des restes « global $scenario; » un truc trouvé sur l’ancien forum

[2020-01-04 22:54:13][SCENARIO] Start : Scenario lance manuellement.
[2020-01-04 22:54:13][SCENARIO] Exécution du sous-élément de type [action] : code
[2020-01-04 22:54:13][SCENARIO] Exécution d’un bloc code
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 1
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 2
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 3
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 4
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 5
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 6
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 7
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 8
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 9
[2020-01-04 22:54:13][SCENARIO] Fonction*
[2020-01-04 22:54:13][SCENARIO] 10
[2020-01-04 22:54:13][SCENARIO] Ceci est une chaîne, et un peu plus.
[2020-01-04 22:54:13][SCENARIO] Servir un cappuccino.
[2020-01-04 22:54:13][SCENARIO] Servir un espresso.
[2020-01-04 22:54:13][SCENARIO] pour test.
[2020-01-04 22:54:13][SCENARIO] Fin correcte du scénario

function ON(){
global $scenario;
$scenario->setLog('***************************Fonction****************************'); 
  static $count = 0;
    $count++;
$scenario->setLog($count); 
    if ($count < 10) {
        ON();
    }
    $count--;
}
ON();

function add_some_extra(&$string)
{
    $string .= ', et un peu plus.';
}
$str = 'Ceci est une chaîne';
add_some_extra($str);
$scenario->setLog($str); 

function servir_cafe ($type = "cappuccino")
{
    return "Servir un $type.\n";
}
$scenario->setLog(servir_cafe()); 
$scenario->setLog(servir_cafe("espresso")); 

$var="test";
function retest ($type)
{
    return "pour $type.\n";
}
 $scenario->setLog(retest($var)); 

les derniers un argument de fonction
https://www.php.net/manual/fr/functions.arguments.php

Bon vu que c’est pas simple je vais deplacer mon calcul dans la fonction elle meme