tôi gỡ lỗi một số mã cho một khách hàng và tìm thấy cú pháp sau:Nửa dấu chấm phẩy sau một trường hợp hợp lệ trong câu lệnh chuyển đổi PHP?
switch ($i) {
case 0;
echo "i equals 0";
break;
case 1;
echo "i equals 1";
break;
case 2;
echo "i equals 2";
break;
}
trường hợp Báo cáo kết thúc trong dấu chấm phẩy chứ không phải là dấu hai chấm. Hóa ra điều này không biên dịch, nhưng nó là hợp pháp? Tôi chưa bao giờ thấy cú pháp đó trước đây.
@LeviMiết không, bạn sẽ không. Không có logic nào ở đây có thể được hiểu một cách hợp lý; PHP chỉ tự ý cho phép một dấu chấm phẩy sau một trường hợp thay vì dấu hai chấm vì một lý do nào đó. Cú pháp tương tự là một lỗi trong C. –