CSV文字列として2つの変数があります。例:
$csva = "1,4,7,10,39,12";
$csvb = "4,1,12";
$csvb
のすべての要素がに存在するかどうかを検索したいと思い$csva
ます。
これを行うための簡単な関数はありますか?
注:これをループして各要素を比較できることはわかっています。しかし、これを行うためのphp関数があるかどうか疑問に思っています。
何か案は?
function csv_contains( $haystack, $needle ){
return ! count( array_diff(
explode(',',$needle ),
explode(',',$haystack)
));
}
var_dump( csv_contains( "1,4,7,10,39,12", "4,1,12") ); //true
var_dump( csv_contains( "1,4,7,10,39,12", "4,1,12,999") ); // false
いいえ、あなたが得ることができる最も近いものは次のとおりです:
if(count(array_intersect(explode(',', $csva), explode(',', $csvb))) == count(explode(',', $csvb))){
echo 'All items there';
}