2011-10-18 36 views
10

Tôi khá quen với cú pháp Select Case của vb.net về bản chất là câu lệnh chuyển đổi, nơi bạn có thể làm những việc như Case Is > 5 và nếu nó khớp, nó sẽ thực thi trường hợp đó.Báo cáo chuyển đổi điều kiện trong PHP

Làm thế nào tôi có thể làm những gì tôi sẽ gọi là "báo cáo chuyển đổi có điều kiện" vì tôi không biết tên thực tế, trong PHP?

Hoặc cách nhanh chóng để quản lý điều này là gì?

switch($test) 
{ 
    case < 0.1: 
     // do stuff 
     break; 
} 

Đó là những gì tôi đã thử hiện tại.

+2

Bạn sẽ phải sử dụng 'if-elseif-else'. PHP không hỗ trợ cú pháp này. – NullUserException

+2

Chỉ cho phép các giá trị vô hướng cho các trường hợp. –

Trả lời

22

Tôi nghĩ rằng bạn đang tìm kiếm một cái gì đó như thế này (đây không phải là chính xác những gì bạn muốn hoặc ít nhất là những gì tôi hiểu là nhu cầu của bạn):

<?php 

switch (true) { 

case ($totaltime <= 1): 
echo "That was fast!"; 
break; 

case ($totaltime <= 5): 
echo "Not fast!"; 
break; 

case ($totaltime <= 10): 
echo "That's slooooow"; 
break; 
} 

?> 
+0

@BoltClock: Sự thật là gì? – Cyclone

+0

Và tôi có thể sử dụng phao nổi ở đây trong các biểu thức boolean một cách an toàn không? – Cyclone

+0

@ Cơn bão Có, bạn có thể sử dụng phao quá. –

0

PHP hỗ trợ switch statements. Là những gì bạn muốn?

+0

Không, tôi biết giây chuyển đổi bình thường. – Cyclone

+0

Tôi hiểu, câu hỏi đã được sửa đổi của bạn làm cho điều đó rõ ràng hơn bây giờ. –

0

tôi đã cố gắng để thêm video này như một bình luận cho câu trả lời bằng cách BoltCock, nhưng như vậy là nói với tôi rằng câu trả lời của mình bị khóa vì vậy tôi sẽ làm cho một riêng biệt (và về cơ bản không cần thiết) câu trả lời:

Các "công tắc (true) "câu trả lời từ BoltCock giống như the following example, mặc dù logic tương đương nếu + else nếu + khác được cho là đẹp hơn bởi vì các biểu thức có điều kiện được căn chỉnh theo chiều dọc và là thực hành chuẩn/được chấp nhận trong PHP.

Nhưng nếu + else if cú pháp khác + là bản chất phổ quát trên ngôn ngữ kịch bản và do đó ngay lập tức có thể đọc được (và duy trì) bởi bất cứ ai, mang đến cho nó cái gật đầu của tôi là tốt.

Các vấn đề liên quan