php 在 echo 语句中使用 switch

标签 php switch-statement echo

我需要在 echo 语句中使用类似 switch 的语句

我找到了一个方法,但我认为这不是最好的方法 当我们想在 echo 中使用 IF 时,写一些像这样的东西:

echo ((condition)?'print this if condition is True':'print this if condition is False');

我们可以将此方法用于类似开关的方式:

echo ((case1)?'case 1 result':((case2)?'case2 result':((case3)?'case3 result':'default result')));

你知道更好的方法吗?

最佳答案

您的示例称为三元运算符,它基本上是 if 语句的缩写。

因此,在您的第二个示例中,您只是在执行大量链式 if then else 的操作

你做这样的事情要好得多

    switch ($type)) {
    case "txt":
         $output = "images/doctypes/icon_txt.gif";
    break;
    case "doc":
         $output = "images/doctypes/icon_doc.gif";
    break;
    case "docx":
         $output = "images/doctypes/icon_doc.gif";
    break;
    case "pdf":
         $output = "images/doctypes/icon_pdf.gif";
    break;
    case "xls":
         $output = "images/doctypes/icon_xls.gif";
    break;
    case "xlsx":
         $output = "images/doctypes/icon_xls.gif";
    break;
    case "ppt":
         $output = "images/doctypes/icon_ppt.gif";
    break;
    case "pptx":
         $output = "images/doctypes/icon_txt.gif";
    break;
    case "rtf":
         $output = "images/doctypes/icon_txt.gif";
    break;
    case "zip":
         $output = "images/doctypes/icon_zip.gif";
    break;
    case "rar":
         $output = "images/doctypes/icon_zip.gif";
    break;
    case "mdb":
         $output = "images/doctypes/mdb.gif";
    break;
    default:
         $output = "images/doctypes/icon_generic.gif";
    };

echo $output;

关于php 在 echo 语句中使用 switch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15968176/

相关文章:

javascript - 修改 dhtmlxGantt 以处理多个项目 - Laravel5

swift - 下划线符号是否忽略或检查 Swift 中 switch 语句中的空值?

batch-file - 使用带有特殊字符的批处理回显

php - 准确保存和显示文本的输入和提交方式

javascript - 将二维数组从 PHP 转换为 JS

php - Mysql语句拆分变量的一部分

php - 从远程系统在 apache 中安装 SOAP 扩展

c# - 这个 switch 语句闻起来不好吗?

javascript - 我怎样才能让我的 JS 代码更短?

gdb - gdb 如何检索目标程序的退出码?