if语句表达式中的php数组解引用
为什么我需要在if语句表达式中使用大括号进行数组索引? 为什么下列行为是非法的if语句表达式中的php数组解引用,php,arrays,brackets,curly-braces,Php,Arrays,Brackets,Curly Braces,为什么我需要在if语句表达式中使用大括号进行数组索引? 为什么下列行为是非法的 $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 "$month
$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]";
}
但是,以下方法可以很好地工作:
$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]";
}
这两个版本完全相同 此外,缔约国还表示: 方括号和大括号都可以互换使用来访问数组元素(例如,
$array[42]
和$array{42}
都可以做同样的事情[…])
这两种方法似乎都有效,而第一个版本是“合适的”。