Warum muss Array-Indizierung mit geschweiften Klammern innerhalb eines If-Anweisung Ausdruck durchführen? Warum ist das Folgende illegal?PHP-Array-Dereferenz in If-Anweisung Ausdruck
$birthday = "1990-01-18";
$date_birth = explode("-", $birthday);
if ($date_birth[1] != "00" && $date_birth[2] != "00") {
$monthName = date('F', mktime(0, 0, 0, $date_birth[1], 10));
echo "$monthName $date_birth[2]";
}
jedoch folgende Arbeiten fein:
$birthday = "1990-01-18";
$date_birth = explode("-", $birthday);
if ($date_birth{1} != "00" && $date_birth{2} != "00") {
$monthName = date('F', mktime(0, 0, 0, $date_birth[1], 10));
echo "$monthName $date_birth[2]";
}
Beide scheinen zu arbeiten http://sandbox.onlinephpfunctions.com/code/7228bf53485ff759fa17d61ca900768d74a9a162 und die erste Version ist die "richtige". –