Dreizeiler gegen 200 Meter Quellcode......

Hallo Gemeinde,

ich würde gerne 225 Variablen mit dem gleichen Wert setzen…

Die Variablen sind alle gleich benannt :
„Zeit“

Gibt es hier eine Chance, mit wenig Quellcode in allen 225 Variablen den gleichen Wert zu setzen…

Genauer gesagt sollen sie gelehrt werden :

SetValueString(17573 /*[HV Wette Admin\Spieler\Externe\1\Spieler 001\Zeit]*/,"");
   SetValueString(14485 /*[HV Wette Admin\Spieler\Externe\1\Spieler 002\Zeit]*/,"");
   SetValueString(43824 /*[HV Wette Admin\Spieler\Externe\1\Spieler 003\Zeit]*/,"");
   SetValueString(10414 /*[HV Wette Admin\Spieler\Externe\1\Spieler 004\Zeit]*/,"");
   SetValueString(40946 /*[HV Wette Admin\Spieler\Externe\1\Spieler 005\Zeit]*/,"");
   SetValueString(40441 /*[HV Wette Admin\Spieler\Externe\1\Spieler 006\Zeit]*/,"");
   SetValueString(14517 /*[HV Wette Admin\Spieler\Externe\1\Spieler 007\Zeit]*/,"");
   SetValueString(18305 /*[HV Wette Admin\Spieler\Externe\1\Spieler 008\Zeit]*/,"");
   SetValueString(45601 /*[HV Wette Admin\Spieler\Externe\1\Spieler 009\Zeit]*/,"");
   SetValueString(22905 /*[HV Wette Admin\Spieler\Externe\1\Spieler 010\Zeit]*/,"");

Wäre für einen Tip sehr offen :slight_smile:

LG
Sascha

Tipp: IPS_GetObjectList zum Beispiel.

Wären meine Gedanken, ist aber ungetested:

<?php

// ID von "1"          HV Wette Admin\Spieler\Externe\1\
$mainFolder = 12345;


// Array mit den Unterordner IDs zu $mainFolder
$subFolder = IPS_GetChildrenIDs($mainFolder);

// Wie viele Unterordner sind vorhanden?
$countSubFolder = count($subFolder);

// Setzen der Werte
for($i=0; $i<$countSubFolder; $i++){
	// Lese die IDs aus dem Array 
	$parentVarFolderID = $subFolder[$i];
	// Suche im child der oben ausgelesenen ID nach der Variable "Zeit"
	$varID = IPS_GetObjectIDByName("Zeit", $parentVarFolderID);
	// setze Wert
	SetValueString($varID, "zu setzender Wert");    	
};
?>

Edit: Achja hier noch folgender Text aus der Docu:

Vorsicht: Da Namen in IP-Symcon beliebig vergeben werden können, und damit nicht eindeutig sind, kann der Befehl eine falsche ID zurückmelden.

Und hier die verwendeten Befehle:

https://www.symcon.de/service/dokumentation/befehlsreferenz/objektverwaltung/ips-getchildrenids/
http://php.net/manual/de/function.count.php
http://php.net/manual/de/control-structures.for.php
https://www.symcon.de/service/dokumentation/befehlsreferenz/objektverwaltung/ips-getobjectidbyname/

Vielen Dank DerStandart, vielen Dank soundman,

Das script von soundman ist jetzt getestet und funktioniert wunderbar :slight_smile:

Nur leider habe ich mich nicht ganz klar ausgedrückt und mein Beispiel, wie ich es angefangen habe, war nicht ausreichend :frowning:

Ich habe einen Überordner „Spieler“.
In diesem befinden sich 10 weitere Ordner, und in diesen gibt es jeweils den Ordner 1,2 und 3.

Gibt es eine Möglichkeit, den gesamten Überordner „Spieler“ nach den Variablen „Zeit“ durchsuchen zu lassen ?

Das wäre dann wie Weihnachten und Ostern zusammen :slight_smile:

Liebe Grüße und vielen Dank für die Hilfe
Sascha