PHP Array Ausgabe mit Doppelpunkt in Bezeichnung?

Gamer20

Lt. Junior Grade
Registriert
Dez. 2005
Beiträge
489
Meine Testausgabe zeigt mir folgendes:

Code:
Array ( [site_name] => YouTube [url] => https://www.youtube.com/watch?v=pCzLlEzkeCY [title] => NORTH AMERICA STADIUM TOUR RESCHEDULED TO 2021! [image] => https://i.ytimg.com/vi/pCzLlEzkeCY/maxresdefault.jpg [image:width] => 1280 [image:height] => 720 [description] => 𝗥𝗮𝗺𝗺𝘀𝘁𝗲𝗶𝗻 𝗮𝗿𝗲 𝘃𝗲𝗿𝘆 𝗵𝗮𝗽𝗽𝘆 𝘁𝗼 𝗮𝗻𝗻𝗼𝘂𝗻𝗰𝗲 𝘁𝗵𝗲 𝗿𝗲𝘀𝗰𝗵𝗲𝗱𝘂𝗹𝗲𝗱 𝗱𝗮𝘁𝗲𝘀 𝗳𝗼𝗿 𝘁𝗵𝗲𝗶𝗿 𝗡𝗼𝗿𝘁𝗵 𝗔𝗺𝗲𝗿𝗶𝗰𝗮 𝗧𝗼𝘂𝗿 𝘁𝗼𝗱𝗮𝘆! The tour will now begin on August 22, 2021 in Montreal and end... [type] => video.other [video:url] => https://www.youtube.com/embed/pCzLlEzkeCY [video:secure_url] => https://www.youtube.com/embed/pCzLlEzkeCY [video:type] => text/html [video:width] => 1280 [video:height] => 720 [video:tag] => Rammstein Tour Dates America 2021 )

die ersten Werte ohne ":" gibt er mir aus (z.B.: von "url", "typ" oder "image")

PHP:
echo"$ERG[type]";

jetzt hätte ich gerne aber noch die Werte von den Einträgen, mit dem Doppelpunkt dazwischen (z.B.: "video:height"oder "video:tag")

wie lautet die Schreibweise dazu? Bisher habe ich nichts im Netz gefunden.
 
Bei einem assoziativen array muss du den key in '' oder "" setzen.
Also: echo $erg['video:url'];
 
Mein Fehler war die Schreibweise des echo Befehls. Ich schreibe eher echo".....";

Das funktioniert wohl nicht mit den doppelten Füßchen.

Da muß entweder des Inhalt des Arrays in ein neues (somit längeres) Array packen oder in diesem Fall die Schreibweise von echo ändern.

Danke Leute, manchmal liegt es eben nur an winzigen Sachen.
 
die Anführungszeichen beim echo brauchst du nur für Text-Strings. Bei Variablen werden sie nicht benötigt.

Die PHP "Besonderheit" das Variablen innerhalb von Textstrings mit doppelten Anführungszeichen ausgegeben werden würde ich generell vermeiden, da kann man nur durcheinander kommen.

PHP:
<?php
$eol = "\r\n"; // neue zeile im ausgabequelltext, hier gehen nur doppelte anführungszeichen
echo "test" . $eol; // Einfacher Text-String mit Doppelten Anführungszeichen
echo "test", ' ', 'test2', $eol; // echo geht auch beistrich getrennt (spur schneller)

$test = 'test'; // außer bei den sonderzeichen sind einfache anführungszeichen möglich.
echo $test, $eol; // Ausgabe einfach variable

$test_array = array(
  'type' => 'video.other',
  'video:url' => 'https://www.youtube.com/embed/pCzLlEzkeCY',
);
foreach ( $test_array as $test_item ) {
  echo $test_item, $eol;
}
foreach ( $test_array as $test_item_key =>  $test_item_value ) {
  echo $test_array[$test_item_key], $eol;
  echo $test_item_value, $eol;
}
echo $test_array['type'], $eol;
echo $test_array['video:url'], $eol;
echo $test_array["video:url"], $eol;
?>

einfach mal durchprobieren.
 
Zuletzt bearbeitet:
Ja ich habe es mir immer einfach gemacht, in dem ich diese Striche verwendet habe. z.B.: echo"hier steht $Objekt[diverse] im Raum.".
 
Du kannst die Schreibweise mit echo "..." weiter nutzen. Dafür muss alles, was über einfache Variablen hinausgeht (z.B. Arrayzugriff), mit {...} geklammert werden:
Code:
echo "$test_array[type] is not ideal"; //  video.other is not ideal
echo "{$test_array['type']} is better"; //  video.other is better
echo "$test_array[video:url]"; //  Sythax error
echo "{$test_array['video:url']} works!"; //  https://www.youtube.com/embed/pCzLlEzkeCY works!
 
ah das ist ja klasse, danke. da werde ich auch ein paar Schreibweisen in meinen Scripten gleich mal mit korrigieren. Deine Variationen habe ich mir gleich auf meinem "Merkblatt" notiert.
 
Zuletzt bearbeitet:
Egal welche Programmiersprache: Ich rate dazu HTML-Ausgaben immer mit einem Template-Framework umzusetzen, dann ergeben sich solche Probleme und Fragen erst gar nicht.

In PHP bietet sich da Twig zum Beispiel an.
 
Da PHP eigentlich als Template-Framework gestartet wurde eignet es sich dazu mmn perfekt. (Aber ok ich mache seit 12 Jahren fast nix anderes)

Bei Twig muß man noch einiges an Zusatzfunktionen einbauen damit man es vollständig ausnutzen kann, zb im Craft CMS sieht man was geht.

DH wo es gut integriert eingebaut ist, ist Twig ein Segen.
Zb bei Drupal hätte man es lieber bleiben lassen sollen.
 
Zuletzt bearbeitet:
Zurück
Oben