07-01-2023, 11:22
Das Debuggen von Programmcode habe ich nie richtig wahrgenommen und gelernt. In VBA kann ich das mittlerweile einsetzen, bei PHP habe ich wieder mal so meine Probleme. Nun weiß ich aber, dass ich mit var_dump() durchaus gute Erkenntnisse erzielen kann, wenn mal wieder etwas nicht funktioniert.
Insbesondere bei der Nutzung von Arrays und deren Inhalte kann ich überprüfen, ob ich die richtigen Ergebnisse erwarten kann.
Bei der Ermittlung der Breite eine Videos, welches über ein Array via GET als Link aufzurufen wurde, hatte ich Probleme, dass Ergebnis der Shell-EXEC in eine Variable zu bekommen. Durch var_dump() erst habe ich geschnallt, dass ich es mit einem Array zu tun hatte.
Und zwar habe ich den Inhalt von $_GET mittels var_dump() ausgewertet:
Das Ergebnis war:
Damit war klar, dass ich ein Array als Ergebnis erhalten hatte. Wie aber nun das Ergebnis für meine Zwecke nutzen. Der komplette String aus Ordner und Dateiname sollte in dem Shell-EXEC-Statement als Variable genutzt werden, um die Breite zu ermitteln.
Eher durch Zufall wurde mir klar, dass in dem Array nur ein Element enthalten war - nämlich video.
Und wie ich gesehen konnte, wurde video in dem Tag für den HTML-Player als Variable für den source-Tag genutzt:
Und damit war dann klar, dass ich für den absouten Dateinamen nun eine Variable $video würde nutzen können:
Der Inhalt der Variablen $video war in diesem Falle:
Damit konnte ich die Breite nun in den HTML-Tag für den Player bei width einsetzen.
Der in den eckigen Klammern eines Arrays stehende Wert, ist die zu nutzenden Variable für die weitere Verwendung im Programmcode.
Insbesondere bei der Nutzung von Arrays und deren Inhalte kann ich überprüfen, ob ich die richtigen Ergebnisse erwarten kann.
Bei der Ermittlung der Breite eine Videos, welches über ein Array via GET als Link aufzurufen wurde, hatte ich Probleme, dass Ergebnis der Shell-EXEC in eine Variable zu bekommen. Durch var_dump() erst habe ich geschnallt, dass ich es mit einem Array zu tun hatte.
Und zwar habe ich den Inhalt von $_GET mittels var_dump() ausgewertet:
PHP-Code:
<?php
var_dump($_GET);
?>
Das Ergebnis war:
PHP-Code:
<?php
array(1) { ["video"]=> string(72) "/TM2_1/serien/wilsberg/wilsberg_24_interne_affaeren_2008-zp7ayygia5q.mp4" }
?>
Damit war klar, dass ich ein Array als Ergebnis erhalten hatte. Wie aber nun das Ergebnis für meine Zwecke nutzen. Der komplette String aus Ordner und Dateiname sollte in dem Shell-EXEC-Statement als Variable genutzt werden, um die Breite zu ermitteln.
Eher durch Zufall wurde mir klar, dass in dem Array nur ein Element enthalten war - nämlich video.
Und wie ich gesehen konnte, wurde video in dem Tag für den HTML-Player als Variable für den source-Tag genutzt:
PHP-Code:
<?php
<source src=<?php echo $video; ?> type="video/mp4">
?>
Und damit war dann klar, dass ich für den absouten Dateinamen nun eine Variable $video würde nutzen können:
PHP-Code:
<?php
$breite = shell_exec("ffprobe -v error -select_streams v:0 -show_entries stream=width -of csv=s=x:p=0 " . $video);
?>
Der Inhalt der Variablen $video war in diesem Falle:
PHP-Code:
<?php
/TM2_1/serien/wilsberg/wilsberg_24_interne_affaeren_2008-zp7ayygia5q.mp4
?>
Damit konnte ich die Breite nun in den HTML-Tag für den Player bei width einsetzen.
Der in den eckigen Klammern eines Arrays stehende Wert, ist die zu nutzenden Variable für die weitere Verwendung im Programmcode.