Khi suy yếu tố của PHP chuỗi lập chỉ mục mảng (5.3.3, Win32) các hành vi sau đây có thể được mong đợi hay không:Interpolation (đôi chuỗi trích dẫn) của Associative Arrays trong PHP
$ha = array('key1' => 'Hello to me');
print $ha['key1']; # correct (usual way)
print $ha[key1]; # Warning, works (use of undefined constant)
print "He said {$ha['key1']}"; # correct (usual way)
print "He said {$ha[key1]}"; # Warning, works (use of undefined constant)
print "He said $ha['key1']"; # Error, unexpected T_ENCAPSED_AND_WHITESPACE
print "He said $ha[ key1 ]"; # Error, unexpected T_ENCAPSED_AND_WHITESPACE
print "He said $ha[key1]"; # !! correct (How Comes?)
Inerestingly, sự dòng cuối cùng có vẻ là mã PHP chính xác. Bất kỳ lời giải thích? Tính năng này có đáng tin cậy không?
Chỉnh sửa: Điểm của bài đăng hiện được đặt trong mặt đậm để giảm hiểu lầm.
@nikic, tôi không thể tìm thấy trường hợp này chính xác (w/o dấu ngoặc nhọn) trong tài liệu, mà là nó ? Cảm ơn, rbo –
@mario: Cá nhân tôi nghĩ rằng nó không tốt, nhưng nhiều người khác có lẽ không sao với nó -> Bỏ phần đó. – NikiC
@rubber boots: tìm ra dòng này: "echo" Anh ấy uống một ít nước ép [koolaid1]. "PHP_EOL;'. – NikiC