繰り返しますが、私は動作する CSV フィルターに取り組んでいます。約 500 行のプロモーション コードを検索し、その金額を ajax レシーバーに返します。奇妙なことに、正確に一致するものを検索するのではなく、2 文字だけを入力すると、入力した文字を含む値が見つかると、php プロセッサが結果を返します。4弦値の正確な適合のみを探すために必要です。
これまでの私のコードは次のとおりです。
<?php
// if data are received via POST, with index of 'test'
if (isset($_POST['test'])) {
$promocodevalid = false;
$file = fopen('test.csv', 'r');
$coupon = array($_POST['test']);
$coupondef = $_POST['test']; // get data
$coupon = array_map('preg_quote', $coupon);
$regex = '/'.implode('|', $coupon).'/i';
while (($line = fgetcsv($file)) !== FALSE) {
list($promocode, $amount) = $line;
if(preg_match($regex, $promocode)) {
$validity = 1;
echo $amount."[BRK]".$promocode."[BRK]".$validity;
$promocodevalid = true;
break;
}
}
if(!$promocodevalid) {
$validity = 0;
echo $amount."[BRK]".$promocode."[BRK]".$validity;
}
}
?>