.csvファイルのフルネームをファーストネーム、ミドルネーム、ラストネームに分割するために、以下のコードを記述しました。これはうまく機能し、次の種類の出力を提供します。
Eric,T.,Nolan
Mary,,Worth
Jim,T.,Lane
E.,Thomas,Powell
William,Reilly,Smith
Johnny,,Depp
Stevie,de,la Soul
画面に印刷することはできますが、コンマで区切られた3つのフィールド(つまり、名、ミドルネーム、姓)を含む新しい.csvファイルに戻すのに助けが必要です。fwriteとfputcsvのどちらを使用すべきかわからない。名前を分割するだけで長い時間がかかりましたが、今では新しいcsvファイルに書き戻すことに固執しています。教祖の助けをいただければ幸いです。皆さんありがとう!
これが私のコードです:
<?php
$file = fopen('nameFile.csv', 'r');
$row = 0;
while (($line = fgetcsv($file)) !== FALSE)
{
list($name[]) = $line;
$row++;
}
$number_of_rows = $row;
fclose($file);
for($i = 0; $i < $number_of_rows; $i++) {
foreach ($name as $NameSplit)
list($first[], $middle[], $last[]) = explode(' ', $NameSplit, 3);
if ( !$last[$i] ) {
$last[$i] = $middle[$i];
unset($middle[$i]);
}
echo $first[$i] . "," . $middle[$i] . "," . $last[$i] . "<br>\n";
}
?>