1

CSV文字列として2つの変数があります。例:

 $csva = "1,4,7,10,39,12";
 $csvb = "4,1,12";

$csvbのすべての要素がに存在するかどうかを検索したいと思い$csvaます。

これを行うための簡単な関数はありますか?

注:これをループして各要素を比較できることはわかっています。しかし、これを行うためのphp関数があるかどうか疑問に思っています。

何か案は?

4

2 に答える 2

2

http://codepad.org/nA2P6FCH

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
于 2012-06-20T17:14:58.987 に答える
0

いいえ、あなたが得ることができる最も近いものは次のとおりです:

if(count(array_intersect(explode(',', $csva), explode(',', $csvb))) == count(explode(',', $csvb))){
    echo 'All items there';
}
于 2012-06-20T17:14:59.757 に答える