重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

<?php
/* 配列の作成 */
$array = array($name, $telephone, $email);

/* ファイルポインタをオープン */
$file = fopen("information.csv", "a");

/* CSVファイルを配列へ */
if( $file ){
var_dump( fputcsv($file, $array) );
}

/* ファイルポインタをクローズ */
fclose($file);
?>


上記のように記載した時、windowsのchromeでみると文字化けしてしまいます。
どのような記述をすれば、文字化けしないか教えてください。

A 回答 (2件)

文字コードがなんだかわからんけど、適切なヘッダを出力すればいいんじゃないかな?



例えばUTF-8だったら

header('Content-type: text/plain; charset=utf-8');

文字コードは適切なのにしてね
    • good
    • 0
この回答へのお礼

お礼が遅くなってしまい、失礼しました。

ご丁寧に記載していただき、ありがとうございました。

無事にやりたいことができるようになりました。

お礼日時:2014/10/21 20:54

>上記のように記載した時、windowsのchromeでみると文字化けしてしまいます。



記載されたソースではfputcsvの戻り値(整数)をvar_dumpしているだけのようですが、何が化けるんでしょうか?


$name などをprint していて(しているのかどうかソースからは読み取れませんが)文字化けするということなら、$name に格納されている文字列の文字セットとブラウザが認識している文字セットが違っているだけでしょ。

スクリプトの先頭で、記述している文字セットに合わせてheader()を返してやってください。

(例)
header('content-type:text/html; charset=utf-8');
    • good
    • 0
この回答へのお礼

お礼が遅くなってしまい、失礼しました。

ご丁寧に記載していただき、ありがとうございました。

無事にやりたいことができるようになりました。

お礼日時:2014/10/18 12:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!