
PHP5使用者です。
CSVを fgetcsv() で読み込みたいのですが初めてのためうまくいきません。対象のCSVは囲み文字の""がありません。
日本語が含まれているため""がないせいで読み込み後、文字化けを起こしています。
専門書によると
fgetcsv($fp, 読み込み長さ, 区切り文字, 囲み文字)
らしいのですが、囲み文字なしのCSVはどうするかは書いていません。
そもそもfgetcsv()で囲み文字のないCSVを読むこと自体無理なのでしょうか?
お詳しい方、よろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
別に囲い文字が無くても文字化けはしないんじゃないかと思います。
文字列の中にカンマが含まれているのであれば別ですが。
どのような場合に文字が化けるのでしょうか?
いろいろ実験してみましたところ、UTF-8のみOKでshift_jisとEUC-JPは化けるようです。
名前,住所
太郎,東京
次郎,神奈川
とshift_jisにて作成、fgets() と fgetcsv() を同時に動かしてみました。
$tgFi = 'test.csv';
$fp = fopen($tgFi,'r');
while(!feof($fp)){
$line = fgets($fp,1000);
print "{$line}<br />\n";
}
fclose($fp);
$fp = fopen($tgFi, 'r');
while( $ech_a = fgetcsv($fp, 1000)){
foreach($ech_a as $v){ print "{$v} "; }
print "<br />\n";
}
fclose($fp);
<結果>
fgets() はそのまま出ましたが、fgetcsv() のほうは下記のように化けました。
O Z所
Y
Y _奈川
fgetcsv() はUTF-8専用なのでしょうかね?
マニュアルにはそのようなことは書いてないようですが…
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
Excelについて質問です。 セル...
-
CSVの定義
-
EXCELからCSVにすると余計なカ...
-
マクロを使ってフォルダー内に...
-
パス区切りの文字について
-
エクセル:桁区切り「カンマ」...
-
データグリッド内の数値をカン...
-
セパレータ文字の意味を教えて...
-
「カンマ」と「コンマ」は同じ...
-
エクセルにペーストする際にカ...
-
StringGridの内容をクリップボ...
-
カンマ区切り
-
perlでのSTDINについて
-
Delphi6 Delimiterの使い方
-
カンマ区切りでないテキストをc...
-
エクセル セルの書式設定 ユ...
-
カンマ区切りの数字をCSVフ...
-
PHP カンマをエスケープしたい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
マクロを使ってフォルダー内に...
-
EXCELからCSVにすると余計なカ...
-
Excelについて質問です。 セル...
-
CSVの定義
-
[VBA][Excel]クリップボードか...
-
WORDで改ページすると時々グレ...
-
カンマ区切りの数字をCSVフ...
-
C#で、テキストボックスの入力...
-
データにカンマが入ったCSVデー...
-
VBAでtxtファイルを読み込む際...
-
カンマ区切り
-
VB2005のTextBoxでカン...
-
メモ帳からエクセルにセル区切...
-
JPY ¥1,500.00は日本円でお幾ら?
-
テキストファイルからReadLine...
-
カンマ区切りでないテキストをc...
-
エクセルにペーストする際にカ...
-
パス区切りの文字について
おすすめ情報