PHP: Variablen aus Include auslesen

ghostadmin

Grand Admiral Special
★ Themenstarter ★
Mitglied seit
11.11.2001
Beiträge
24.593
Renomée
126
Standort
Dahoam Studios
Angenommen ich habe in einem Include File mehrere Variablen stehen aber ich weiß nicht wieviele z.B.:

$config['Name1']=test1;
$config['Name2']=test2;
$config['Name3']=test3;
...
..
.


Jetzt möchte unter PHP aus dem Include File die Variablen nacheinander auslesen bzw. wenn diese gesetzt ist, soll eine andere z.b. callduration_name1 auf 0 gesetzt werden.

Hab das probiert aber da hängt der Browser:
Code:
$countnumber=1;
while ( isset($config['Name'.$countnumber])) {
$callduration_name.$countnumber = 0;
$countnumber++;
if ($countnumber == 3) {
        break;
    }
}

Geht das überhaupt? Vermute Zeile 2 und 3 ist nicht richtig.
 

BoMbY

Grand Admiral Special
Mitglied seit
22.11.2001
Beiträge
7.442
Renomée
268
Standort
Aachen

ghostadmin

Grand Admiral Special
★ Themenstarter ★
Mitglied seit
11.11.2001
Beiträge
24.593
Renomée
126
Standort
Dahoam Studios
Ich habe jetzt im config.inc.php

PHP:
$namearray = [
"Name1" => "test1",
"Name2" => "test2",
];

Und auf der anderen php Seite:

PHP:
<?php

error_reporting(E_ALL);
include('include/config.inc.php');
	
$countnumber=1;
while ( array_key_exists('Name1', $namearray)) {
$callduration_name.$countnumber = $namearray['$countnumber'];
echo $callduration_name.$countnumber;
$countnumber++;
if ($countnumber == 3) {
        break;
    }
}	


?>

Wenn ich das ausführe hängt es sich auf, keinerlei Output oder Fehler.
Was ich im Endeffekt haben möchte ist:
$callduration_name1 = "test1"
 

Fliwatut

Vice Admiral Special
Mitglied seit
27.05.2016
Beiträge
612
Renomée
15
Du gibst den Schlüssel im Array nicht richtig an, $countnumer ist 1, nicht Name1 und die Zuweisung des Variablennamens "callduration_name.$countnumber" ist imho auch nicht möglich.

Wenn ich deinen Code ausführen lasse, dann bekomme ich diese Fehlermeldungen:
Undefined index: $countnumber
Undefined variable: callduration_name

Wenn du Name1 fest in der While-Schleife verdrahtest, kannst du die Schleife auch ganz weg lassen und es so zuweisen: $callduration_name1 = $namearray['Name1'];
 

ghostadmin

Grand Admiral Special
★ Themenstarter ★
Mitglied seit
11.11.2001
Beiträge
24.593
Renomée
126
Standort
Dahoam Studios
Wenn ich das nun über Array mache z.b.

PHP:
foreach($namearray as $name) {
			if ( $row['DestinationName']==$name )
			{
				if ( $row['EndTime']!="" && $row['ConnectTime']!="" )
				{
					$arraycallduration[$name] += (strtotime($row['EndTime'])-strtotime($row['ConnectTime']));
				}
			}

		}

Wie komme ich dann anschließend an alle Namen und Zeiten? Also nochmal foreach und $arraycallduration
 
Zuletzt bearbeitet:

ghostadmin

Grand Admiral Special
★ Themenstarter ★
Mitglied seit
11.11.2001
Beiträge
24.593
Renomée
126
Standort
Dahoam Studios
Ja, mit Arrays gehts anscheinend einfacher als Variablen zusammen zu stöpseln. Und ich bin oben einen Schritt weiter als einfach nur auf 0 zu setzen.

Anhand der Variable im Config soll aus der Datenbank im Calllog nachgeschaut werden wieviel Gesprächszeit jeder MA hatte und nachdem die Datenbank ausgelesen wurde soll am Ende noch eine Statistik dargestellt werden, eben mit der Gesprächszeit. Und für letzteres muss ich durchs $arraycallduration iterieren.

So?
PHP:
foreach ($arraycallduration as $name => $value) {
echo "Name: ".$name." Gesprächszeit: ".$value;
}
 
Oben Unten