array_keys funktioniert nicht

Bei mir kommt bei dem vorgegebenen Tutorial immer als Ausgabe „Array“. Weiß jemand woran das liegt?

$array=array(„blau“, „rot“, „grün“, „blau“, „blau“);
echo array_keys($array, „rot“);

Falls nicht, weiss jemand, wie ich einen speziellen Key anders auslesen kann?

Bei mir kommt bei dem vorgegebenen Tutorial immer als Ausgabe
„Array“. Weiß jemand woran das liegt?

$array=array(„blau“, „rot“, „grün“, „blau“, „blau“);

echo array_keys($array, „rot“);

wat soll den da ausgegeben werden ?? die Speicherstelle des erzeugten Arrays ??

syntax ist

array array_keys ( array $input [, mixed $search_value [, bool $strict]] )

also

$arraykeysuche=array_keys($array, „rot“);

foreach ($arraykeysuche as $gefunden => $wogefunden) {
echo $gefunden ."=>".$wogefunden;
}

Falls nicht, weiss jemand, wie ich einen speziellen Key anders
auslesen kann?

print_r(array_keys($array, „blau“)); != echo array_keys($array, „rot“);

print_r != echo

Ja, ich benötige die Speicherstelle des Arrays.

Ja, ich benötige die Speicherstelle des Arrays.

dann nehm doch lieber nen pointer lol

Speicherstelle des Arrays nicht des gesuchten Keys .

Aber vielleicht ist es noch unklar was du eigetnlich machen möchtest.

Ne, passt schon.

Habe noch eine kleine Frage (ohne wieder ein erneuten Thread zu erstellen, sonst gelte ich bald als Spamer… *g*), die etwas schwierig zu beantworten ist, aber vielleicht gibts ja Erfahrungswerte.

Ich habe eine PHP Datei mit ca. 200 Zeilen. Darin sind 5 DB Abfragen, die alle mit einer foreach-Schleife laufen.
Zudem kommt eine While-Schleife, in der noch 2 for-Schleifen sind und eine verschachtelte foreach, die 6 if-Anweisungen und noch eine while-Schleife hat.

Ich führe das Script auf meinem Rechner aus (XAMPP & Firefox) und es braucht richtig lange. Ab und zu bekomme ich sogar die Meldung:

Fatal error: Maximum execution time of 60 seconds exceeded in

Dort wird mir dann immer eine andere Zeilennummer genannt.

Sollte man nicht so viele Verschachtelungen machen oder liegt es gar nicht daran, sondern vielleicht am Quellcode?

Ich habe eine PHP Datei mit ca. 200 Zeilen. Darin sind 5 DB
Abfragen, die alle mit einer foreach-Schleife laufen.
Zudem kommt eine While-Schleife, in der noch 2 for-Schleifen
sind und eine verschachtelte foreach, die 6 if-Anweisungen und
noch eine while-Schleife hat.

ich glaub das liegt an deinen DB abfragen, kann es sein das davon eine im nirvana landet ??. Mach doch mal ohne DB abfrage :smile:

oder noch schlimmer Deine While schleife hat kein ausgang :smile:

OK, es liegt schonmal nicht an den Datenbanken. Die habe ich mal komplett raus genommen. Also wird mich irgendeine Schleife killen. Mh, komisch nur, dass es ab und zu funktioniert. Also muss es irgendwo vielleicht sogar nur eine if-Anweisung sein, die falsch läuft und somit eine Schleife endlos macht. Na dann geh ich mal auf die Suche…

Danke!

ich würde mal überall debugg ausgaben setzen und guggen wo er hängenbleibt, villeicht ja doch ein timeout problem welches sicher eben nur manchmal ergibt

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Du musst die Array-Keys auslesen und in einen skalaren
Typen (für echo) umwandeln, entweder so

 ...
 $array = array( 'blau', 'rot', 'grün', 'blau', 'blau' );
 $trenner = ',';

 echo implode( $trenner,
 array\_values(
 array\_keys($array, 'blau')
 )
 );

 ...

oder so …

 ...
 $array = array( 'blau', 'rot', 'grün', 'blau', 'blau' );
 $trenner = ',';

 array\_map(
 create\_function('$p','echo$p.$GLOBALS["trenner"];'),
 array\_keys($array, 'blau')
 );
 ...

oder noch anders.

Grüße

CMБ

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Habs jetzt gerade gefunden. (Nach fast 4 Stunden)…
Überall alles auskommentiert und immer wieder Zeilen entkommentiert. Jetzt klappts. Danke!