0
私は以下のフォーマットのデータを含むphp配列を持っています。ユニークな値が存在し、の1つのNULL値が存在する可能性があります。これは、他の値と一致するように負の値を必要とします。PHPはユニークなアイテムの配列を複雑なクエリ文字列に変換します
$colors = array_unique([
NULL,
"red",
"black"
]);
私は次のように変換したい:
$converted = [
"NOT LIKE '%red%' AND NOT LIKE '%black%'",
"LIKE '%red%' AND NOT LIKE '%black%'",
"LIKE '%black%' AND NOT LIKE '%red%'"
];
どのように私はこれを達成することができますか?
私はphpでこれを達成する方法について私の頭を得ることができません、私は配列とforeachループのさまざまな組み合わせを試しましたが、最初の$colour
配列が値を展開することができますが、 (同じ構造の拡張データの例2を参照)。
例ここでは2
$colors = array_unique([
NULL,
"red",
"black",
"purple",
"orange"
]);
$converted = [
"NOT LIKE '%red%' AND NOT LIKE '%black%' AND NOT LIKE '%purple%' AND NOT LIKE '%orange%'",
"LIKE '%red%' AND NOT LIKE '%black%' AND NOT LIKE '%purple%' AND NOT LIKE '%orange%'",
"LIKE '%black%' AND NOT LIKE '%purple%' AND NOT LIKE '%orange%' AND NOT LIKE '%red%'",
"LIKE '%purple%' AND NOT LIKE '%orange%' AND NOT LIKE '%red%' AND NOT LIKE '%black%'",
"LIKE '%orange%' AND NOT LIKE '%red%' AND NOT LIKE '%black%' AND NOT LIKE '%purple%'",
];
に行くだけで2つの値を 'があるかどうそれが壊れる[NULL、 '赤']例えば? – Dan
これを処理するコードも更新しました。 –