忘れる前に覚書。優しい文章を目指します。
ザ・覚書 ザ・覚書
出来るだけ子供にも、わかりやすいように書いて行きたいと思います。

PCバージョンでサイトを表示しています。
【ザ・覚書 3クリックアンケート実施中】
暑さの一番の原因はなんだと思いますか?
あなたの支持する政党はどの党ですか?

PHP CSVファイルを扱う為の関数の1つ

☆PHP CSVファイルを扱う為の関数の1つ
今のページの関連ページのリストへ
ザ・覚書のトップページに戻る

どちらかというとC言語の方が詳しいので、PHPでCSVを扱う為の関数が用意されているのは
知りませんでした。

今まではそういう関数をPHPでも実際のコードで再現していたんですが、PHPにはあるんですね・・・。

「fgetcsv」という関数ですが、インターネットを調べると、なにやらバグがありそうな事を書いていたんですが、CSVに半角英数程度を使う程度の小さいシステムでは問題なく使えたのでメモっておきます。

例えば、CSVファイルにユーザーIDとパスワードがあった場合(普通ではあんまりないんでしょうけど、あくまで例です。)、


$handle = fopen( "なにか.csv", "r" ); // CSVファイルオープン
$aindex=1;

while ($array = fgetcsv( $handle ))
{
    $arrayID[ $aindex ] = $array[ 0 ]; // ユーザーID
    $arrayPASS[ $aindex ] = $array[ 1 ]; // パス
    $aindex++;
}

とかして
項目ずつ配列変数に入れます。

「fgetcsv」すれば、1回で全部arrayに入るんじゃなくて、1行ずつ読んで行くようで、
上のコードの感じで項目別のarrayに入れます。

こうすればもう自由に使えます。

こういう関連で、「str_getcsv」とかいう関数でも遊べそうです。


ここで、その後の何かしたい事で使う関数の例など。


$aruka = array_search( $_POST["なんやら"], $arrayID );//配列の中に値があるか

この「array_search」とかいう関数で、配列の中に値があるか調べたり出来ます。
この場合、「$_POST["なんやら"]」と同じ文字列が、「$arrayID」にないかなーとなります。

あれば配列番号。
なければFALSEを返すようです。

楽ちんです。

C言語とかにはなかった関数(?)だと思うので、忘れないようにもメモって置きます。


追記
全角混じりのデータの場合、時々おかしな事になりそうです。
「""」←こういうのを処理する時、よくわからない動作をする時があるような感じでした。
便利なのにちょっと残念です。
半角専用の場合で使おうと思ってます。


記述:2013年05月頃
追記:2013年06月頃





Twitter Facebook Google+ はてな Pocket LINE




一言掲示板です。なにかありましたら以下に書いて書き込みボタンを押して下さい。
管理人による書き込みの確認後、荒らし書き込みでない場合に表示させていただきます。
悪意ある書き込みや挑発的な書き込みと思われる内容は、表示させません。
その為、ちょっと書き込みから表示までに時間がかかってしまいます。ご了承下さい。

お名前

コメント




文字列関連
PHP テキストファイル内容を読み込んだ時等 改行を削除
PHP fopen関数で半角スペースが間にあるファイルは認識できない?
PHP CSVファイルを扱う為の関数の1つ
PHP array_multisort関数で複数配列を一気にソートする
PHP 気が付きにくいコーディングミスの一例
PHP ファイルがあるかないかを判断する関数で悩む
PHP 配列の初期化(使い回し配列の)
PHP 長い処理が止まってしまう場合 time of 30 seconds
その他
サーバー関連 ページの表示を早くする為に、ブラウザのキャッシュを活用
サーバー関連 Apacheアップデート、CGIからFastCGI「.htaccess」とかの変更例
【ザ・覚書 3クリックアンケート実施中】
暑さの一番の原因はなんだと思いますか?
あなたの支持する政党はどの党ですか?

今のページの関連ページのリストへ
ザ・覚書のトップページに戻る
全ページのリストへ