$ListeCommandes = cmd::byEqLogicId('#[Environnement][Pluie1h_OW]'->getId());
foreach($ListeCommandes as $commandes)
{
$commandes->event($pluie[$commandes->getName()-1]);
}
Mais la premiere ligne me renvoie Call to a member function getId() on string
OK je comprends que faut pas faire une getId sur une chaine, mais faut faire quoi alors ?
Si vous avez un doute, écrivez votre code en plusieurs lignes au lieu de vouloir tout faire en une ligne.
Mais en fait cela ne fonctionnera toujours pas car vous récupérez un id, donc un entier, pas une liste de commandes.
Donc je ne sais pas pq vous vouliez rajouter le getid()
Il me manquait qq connaissances pour comprendre cette phrase. Mais avec les explications de @Salvialf , je comprends mieux votre remarque.
Merci à vous 2 de partager vos connaissances.
Pour la posterité:
$Equipement = eqLogic::byId(220); //creation d'un objet représentant l’équipement 220 [Environnement][Pluie1h_OW]
$ListeCommandes = $Equipement->getCmd(); //creation de la liste des commandes
foreach($ListeCommandes as $commandes)
{
$commandes->event($pluie[$commandes->getName()-1]); //Met la valeur pluie[x-1] dans chaque commande info [x]
}