フォーマットされたファイルを読み込む - fscanf()
当ページのリンクには広告が含まれています。
プログラミング言語PHPで、フォーマットされたファイルを読み込む fscanf()を紹介します。
fscanf 関数
mixed fscanf ( resource $handle , string $format )
フォーマットされたファイルを読み込みます。
引数 $handle fopen関数で正常にオープンされた、有効なファイルポインタを指定します。 $format sprintf関数のフォーマットを指定します。
返り値
読み込んだ値を配列で返します。
サンプルコード
フォーマットされたファイル(list.txt)を読み込むサンプルコードです。
作成したタブ区切りのファイルをfopen関数でファイルをオープンし、fscanf関数で1行ずつ読み込んでいます。
fscanf( ファイルポインタ, フォーマット )
<?php /* 読み込むファイルを作成 */ $str = <<<EOD Windows\tMac\tLinux\t10 C言語\tPHP\tjQuery\t20 EOD; file_put_contents('list.txt', $str); /* ファイルポインタをオープン */ $file = fopen("list.txt", "r"); /* ファイルを1行ずつ配列へ */ if( $file ){ while( $line = fscanf($file, "%s\t%s\t%s\t%d\n") ){ var_dump( $line ); } } /* ファイルポインタをクローズ */ fclose($file); ?>
実行結果です。
array(4) { [0]=> string(7) "Windows" [1]=> string(3) "Mac" [2]=> string(5) "Linux" [3]=> int(10) } array(4) { [0]=> string(7) "C言語" [1]=> string(3) "PHP" [2]=> string(6) "jQuery" [3]=> int(20) }
読み込んだファイルが配列として返されています。