PHP IF如何包含多个条件?

时间:2016-10-23 22:19:25

标签: php json

我正在处理从JSON API读取信息的PHP脚本,目的是从API收集信息并将其放入CSV文件中。我想要排除某些信息,到目前为止,我只有一个排除项目并且效果很好,但现在我尝试添加第二个并且似乎无法使其正常工作。这是将这两个条件加在一起的正确方法吗?

$structure_type = $data['sam_data']['registration']['corporateStructureName'];
if($structure_type != "U.S. Government Entity" OR "Non-Profit Organization"){
}

我试图这样做,如果其中任何一个短语出现在corporateStructureName下,那么它就被排除了。我认为使用OR是正确的,但它似乎没有起作用。

2 个答案:

答案 0 :(得分:2)

你需要在OR的任一侧有完整的表达。

if (!($structure_type == "U.S. Government Entity" OR
      $structure_type == "Non-Profit Organization")){
}

答案 1 :(得分:0)

另一个更清晰,更易读的选项是in_array($needle, $haystack)

<?php
$structureTypes = ['U.S. Government Entity', 'Non-Profit Organization'];
if (!in_array($structureType, $structureTypes)) {
    // ...
}

与:相比:

<?php
if (!($structureType == 'U.S. Government Entity' || $structureType == 'Non-Profit Organization')) {
    // ...
}