「コード」と「説明」を含む .csv ファイルがあります。.csv を検索したいのですが、重複する「コード」が見つかった場合は、行全体を置き換えます。
すなわち。csvファイルの:
code description
STA-101 A great product
STA-102 Terrible Product
「STA-102」が見つかった場合は、説明を次のように置き換えます。
code description
STA-101 A great product
STA-102 OK Product
これらは動的なので、if ステートメントが必要です。これを使用して行うことができますfgetcsv()
か?
以下は機能しませんが、私が今知っているのはそれだけです:
$row = 1;
if (($handle = fopen("formTest.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
$row++;
for ($c=0; $c < $num; $c++) {
if ($data[$c] = "STA-102") {
$data[$c] = "OK Product"; }
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}
そもそもファイルに書き込むために、次のものが必要です。
$code = $_POST['CODE'];
$description = $_POST['DESC'];
if ($_POST) {
$csvData = $code . "," . $description. "\n";
$fp = fopen("formTest.csv","ab");
if($fp){
fwrite($fp,$csvData);
fclose($fp); }
}
上記の内容を if ステートメントに組み込んで、必要に応じてコードを上書きするにはどうすればよいですか?