Liebe(r) liebewinter,
Mit
$this -> arLinks = [];
baut ein Leer Array um später mit array_push sich adderiert , wie hier sagt.....
richtig.
if ( isset( $arNewLinks['URL'] ) && isset( $arNewLinks['TEXT'] ) ) { array_push( $this -> arLinks, $arNewLinks ); return true; }
hier wir geprüft ob die statements URL und Text vorhanden sein ,die vom dem Object $navListe -> addLinks abgeholt habe .
Das hast Du richtig verstanden. Allerdings sind URL
und TEXT
keine "statements", sondern Schlüssel (oder "keys"), unter deren Namen in einem Array ein Wert gespeichert sein soll:
$beispiel = array(
'URL' => 'https://selfhtml.org',
'TEXT' => 'SELFHTML'
);
isset($beispiel['URL']); // true
isset($beispiel['TEXT']); // true
isset($beispiel['Selfhtml']); // false, weil kein
// solcher Schlüssel in $beispiel existiert
Es wird in meinem Beispiel-Code auf die Existenz der Schlüssel URL
, TEXT
und Selfhtml
geprüft.
Wenn ja , mit
array_push( $this -> arLinks, $arNewLinks );
wird die Eingenschaft $arNewLinks auf der Array arLinks sich adderiert...
Fast richtig. Wenn ja, dann werden die Inhalte des Arrays mit dem Variablennamen $arNewLinks
in dem Objekt (vom Typ NavigationLinkList
) in dessen Eigenschaft $arLinks
(vom Typ Array) gespeichert.
hier
if ( is_array ( $arNewLinks ) ) {
wird gefragt ob $arNewLinks ein Array ist .
Richtig.
Mit
foreach ( $arNewLinks as $NewLink ) {
iterieren der Array $arNewLinks .
Ja, es wird der Wert jedes Eintrags verarbeitet. Für die Verarbeitung wird er vorübergehend in der Variable $NewLink
abgelegt.
Mit
if ( isset( $NewLink['URL'] ) && isset( $NewLink['TEXT'] ) ) {
,prüft ob ob die statements URL und Text vorhanden sein.
Ob die Schlüssel existieren, ja.
Mit
array_push ( $this -> arLinks, $NewLink );
adderiert der neue Element $NewLink an dem Array .
Ja, $this->arLinks
, also die Objekteigenschaft arLinks
bekommt das Array, das in $NewLink
steht, als neuen Eintrag hinzugefügt.
Liebe Grüße,
Felix Riesterer.