2016-10-23 10 views
2

私は、JSON APIから情報を読み取るPHPスクリプトを作成しています。その目的は、APIから情報を収集してCSVファイルに入れることです。私は特定の情報を除外したいと思っていますが、今までは除外が1つしかなく、うまくいきましたが、今はもう1つ追加しようとしており、正しく動作するようには見えません。これは、2つの条件を一緒に結合する正しい方法ですか?PHP IF複数の条件を含めるには?

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

私は、これらのフレーズのどちらかがcorporateStructureNameの下に来ると、それを除外するようにしています。私はORの使用が正しいと思ったが、それは機能していないようだ。

+0

[in_array()](http://php.net/:に比べ

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

in_array)または2条件 'if($ st!= 'something' && $ st!= 'something else')' –

+2

インターネット上の素晴らしいドキュメントと無限の例を考えれば、 ? – arkascha

+0

http://php.net/manual/en/language.operators.precedence.php –

答えて

2

ORのどちらかの側に完全な式が必要です。クリーナーおよびより読みやすい

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

これはうまくいきました。私はそれが両面で完全でなければならないことを認識しませんでした。この質問に答える時間をとってくれてありがとう、私はこれのために何か新しいことを学んだ。私はあなたの時間を感謝します。 –

0

別のオプションは、in_array($needle, $haystack)ある:

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