首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果该字段为空以返回n/a,我如何让switch命令工作

如果该字段为空以返回n/a,我如何让switch命令工作
EN

Stack Overflow用户
提问于 2015-08-19 22:32:58
回答 2查看 26关注 0票数 0

您好,我写了以下代码,但我有一个小问题。

在我的数据库中,有一个名为gf_gemstone的字段,我写了一个切换脚本(如下所示)

如果返回N/A的字段为empty,我要写的最后一部分。但是无论我做什么,我都不能让它工作。有人能帮上忙吗。

代码语言:javascript
复制
 case "gf_gemstone_Amazon1a":
            switch ($value) {
                case "Agate":
                    return "agate";
                    break;
                case "Amethyst":
                    return "amethyst";
                    break;
                case "Aquamarine":
                    return "aquamarine";
                    break;
                case "Black Diamond":
                    return "black-diamond";
                    break;
                case "Black Sapphire":
                    return "sapphire";
                    break;
                case "Blue Diamond":
                    return "blue-diamond";
                    break;
                case "Blue Sapphire":
                    return "blue-sapphire";
                    break;
                case "Blue Topaz":
                    return "blue-topaz";
                    break;
                case "Chalcedony":
                    return "chalcedony";
                    break;
                case "Citrine":
                    return "citrine";
                    break;
                case "Cognac Diamond":
                    return "brown-diamond";
                    break;
                case "Diamond":
                    return "diamond";
                    break;
                case "Emerald":
                    return "emerald";
                    break;
                case "Garnet":
                    return "garnet";
                    break;
                case "Green Amethyst":
                    return "green-quartz";
                    break;
                case "Green Quartz":
                    return "green-quartz";
                    break;
                case "Green Sapphire":
                    return "green-sapphire ";
                    break;
                case "Lemon Quartz":
                    return "lemon-quartz";
                    break;
                case "Morganite":
                    return "morganite";
                    break;
                case "Multi Sapphire":
                    return "sapphire";
                    break;
                case "Onyx":
                    return "onyx";
                    break;
                case "Opal":
                    return "opal";
                    break;
                case "Orange Sapphire":
                    return "sapphire";
                    break;
                case "Peridot":
                    return "peridot";
                    break;
                case "Pink Sapphire":
                    return "pink-sapphire";
                    break;
                case "Pink Sapphire":
                    return "pink-sapphire";
                    break;
                case "Pink Topaz":
                    return  "pink-topaz";
                    break;
                case "Pink Tourmaline":
                    return "pink-tourmaline";
                    break;
                case "Quartz":
                    return "quartz";
                    break;
                case "Rose Quartz":
                    return "rose-quartz";
                    break;
                case "Rhodolite Garnet":
                    return "rhodolite-garnet";
                    break;
                case "Ruby":
                    return "ruby";
                    break;
                case "Sapphire":
                    return "sapphire";
                    break;
                case "Smokey Quartz":
                    return "smoky-quartz";
                    break;
                case "Spessartite":
                    return "spessartite-garnet";
                    break;
                case "Tanzanite":
                    return "tanzanite";
                    break;
                case "Tsavorite":
                    return "tsavorite";
                    break;
                case "Turquoise":
                    return "turquoise";
                    break;
                case "White Sapphire":
                    return "sapphire";
                    break;
                case "Yellow Diamond":
                    return "yellow-diamond";
                    break;
                case "Yellow Sapphire":
                    return "sapphire";
                    break;
                        case "":
                    return "N/A";
                    break;
              default: return "";
            }
            break;
EN

回答 2

Stack Overflow用户

发布于 2015-08-19 22:38:15

你可以把它写得更简洁:

代码语言:javascript
复制
$stones = array('Agate' => 'agate', 'Amethyst' => 'amethyst', etc...);
if (in_array($value, array_keys($stones))) {
   return $stones[$val];
} else {
   return "N/A";
}
票数 2
EN

Stack Overflow用户

发布于 2015-08-19 22:38:57

@MarcB的答案更精确,但是,如果你想使用switch ... case,对NULL值使用如下:

代码语言:javascript
复制
case (NULL === $value):
    return "N/A";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32098458

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档