Array in Variablen schreiben

Hallo,

wie bekomme ich die Ergebnisse eines Arrays in Variablen geschrieben?

Beispiel:

Array
(
    [0] => gruen
    [1] => blau
    [2] => gelb
    [3] => rot
)

Jetzt hätte ich gerne, so Sinngemäss

SetValue [0] in Variable 1
SetValue [1] in Variable 2
SetValue [2] in Variable 3

usw.

Mit einer for Schleife das Array durchlaufen und den jeweiligen Wert schreiben.

MfG
Ralf

Danke Ralf, aber da bin ich überfordert.

Gesendet von meinem SM-T805 mit Tapatalk

Gibt es gefühlt mehrfach im Forum und bei der Suchmaschine deines Vertrauens ;), ist auch nicht wirklich schwierig.

count stellt die Größe deines Arrays fest und mit for geht die Schleife von 0 bis zum Ende durch.


for ($i= 0;$i < count($array);$i++) {
    SetValue("variable".$i,  $array[$i]);
}

führt dazu, das
variable0 = Wert0,
variable1 = Wert1,
etc.

PS: Des wird so noch nix, du müsstest ja sinnvollerweise IDs angeben ;).

Aber du kannst das auch manuell machen, also z.B.


SetValue(ID1,  $array[1]);
SetValue(ID2,  $array[2]);
...

Danke, ich habe wirklich im Forum und bei Go*** gesucht aber nicht das passende gefunden.

Gesendet von meinem SM-T805 mit Tapatalk

Am einfachsten schreibt man ein array mit implode in einen string. Mit explode kann man den String wieder in ein array schreiben.

einfach mal googeln

so zum Beispiel:


//Feld 0
$wert = array_var[0];
setvalue ($id, $wert)

//Feld1
$wert = array_var[1];
setvalue ($id, $wert)


danke, hat mir auch weitergeholfen…

Hallo zusammen,

ich bräuchte mal eure Hilfe beim schreiben der Zeitwerte aus einem Array in eine Variable. Ich habe folgendes Script:

<?php

$uptimenativ=GetValue(36912 /*[X Testgelände\SNMP\TEERnet Server\System Uptime]*/); 
 
$uptime = $uptimenativ / 100;

function timespanArray( $uptime ){ 
     
    $td['total'] = $uptime; 
    $td['sec'] = $uptime % 60; 
    $td['min'] = (($uptime - $td['sec']) / 60) % 60; 
    $td['std'] = (((($uptime - $td['sec']) /60)-  
                    $td['min']) / 60) % 24; 
    $td['day'] = floor( ((((($uptime - $td['sec']) /60)-  
                    $td['min']) / 60) / 24) ); 
                     
    return $td; 
} 

print_r(timespanArray( $uptime ));

?>

Die Werte ‚day‘, ‚std‘, ‚min‘, ‚sec‘ würde ich jetzt gerne in eine Variable schreiben (hintereinander in die gleiche Variable). Ich habe schon viel versucht, komme aber einfach nicht weiter. Kann mir hier wer helfen?

Hallo,

anbei ein Auszug aus einen meiner Skripte:

<?
$ID_array = 44171;

$array = array ();
//////////////////////////////////////////
//// $array[0]
//////////////////////////////////////////

/////////////////////////////////
$jj = array ( "nb","nb","nb","nb","nb","nb",
      "nb","nb","nb","nb","nb",
      "nb","nb","nb","nb","nb",
		"nb","nb");
// Räume $array[0][$j]
$jj = array ();
$jj = array ( "FlurOG","Ankleide","BadOG" ,"KindOst","KindWest","Eltern",
      "Eingang","Speis","Wohnen","Arbeit","BadEG",
      "FlurKG","Keller","Waschen","Hobby","Technik",
		"Aussen","Garage");
for($j=0; $j<count($jj) ; $j++)	//j Anzahl Raume
	{
		$Parameter = ("Raum");
		if($jj[$j]!= "nb")      // falls ungleich "nb"
			{
				$array[0][$j] = array ( $Parameter      => $jj[$j]);
			}
	}

Vg
Thomas

Meinst du sowas:


$variable = $td['day'] . $td['std'] . $td['min'] . $td['sec']  ;

oder

$variable = $td['day'] . " " . $td['std'] . ":" . $td['min'] . ":" . $td['sec']  ;

Super, vielen Dank! Das ist genau das, was ich gesucht habe. Die ganzen Schreibweisen sind mir noch nicht so geläufig. Bringe mir das ja alles selbst bei :slight_smile:

Hallo Zusammen,

ich habe ein kleines Problem und finde einfach den Fehler nicht.

<?php

$cmd= exec('sensors',$output);

foreach ($output as $line) 
{
	// need to find the temperature in:
	// Core 0:       +39.0 C  (crit = +100.0 C)
	if (preg_match('/Core\s+0:\s+\+(\d+).*/',$line,$match)) 
	
		print_r($match);
		//print ("cpu_temperature:" . $match[0] . " ");
	}


      


    SetValue(10200, $match[1]);

Als Array bekomme ich das.

Array
(
    [0] => Core 0:       +32.0°C  (high = +90.0°C, crit = +90.0°C)
    [1] => 32
)

Notice: Undefined offset: 1 in /var/lib/symcon/scripts/57730.ips.php on line 19

Ich möchte nur den Wert [1] in eine Variable schreiben und das will einfach nicht klappen.

Könnte mir da bitte jemand helfen?

Pack das SetValue mal mit in die If Bedingung, an die Stelle von

//print ("cpu_temperature:" . $match[0] . " ");

Vielen Dank tobiasr genau das war die Lösung. Oftmals ist die Lösung so nahe und man kommt nicht darauf.