第5日 関数利用(ファイル入出力)
1時限目:テキストベースのゲストブックに書き込む
2時限目:ゲストの内容を一覧表示する
3時限目:正規表現で自由ファーマットのテキストを検索する
Webアプリケーシヨンと言うと、とかくデータベースの方に目線が向きがちですが、データを簡単に操作し、また、異なる環境間でやり取りするには、テキストファイルは最適の媒体です。又、正規表現はそれ自体、非常に広範囲な仕事を提供しますが、理屈さえ理解してしまえば、さまざまな用途に応用できるようになります。
◆◆◆◆DEC教材による動作確認◆◆◆◆
★練習問題★
◆◆◆◆まとめ(1時限目)◆◆◆◆
●テキストファイルを操作するには、まず操作対象のファイルをfopen関数でオープンする必要があります。
●fopen関数では、後続の処理が読み取り、書き込み、追記いずれであるかによって、適切なモードを選択する必要があります。
●ファイルの操作後は、fclose関数でファイルをクロースします。
●ファイルシステム関数には、いくつかの設定パラメータが用意されています。ファイルがうまく読み込めない場合には、まず、これらの設定を確認してください。
●ファイルの書き込みを行なうには、fputs関数の役割です。
●ファイルの書き込みを行なう場合は、必ずその前後でファイルのロッキングを行なうべきです。これによって、同時アクセスによるデータの不整合を未然に防ぐことができます。
◆◆◆◆まとめ(2時限目)◆◆◆◆
●タブ区切りのテキストやカンマ区切りテキストを順番に読み込むには、fgetcsv関数を利用すると便利です。
●ファイルポインタは、ファイルの読込み位置を記録するための目印です。ファイルポインタは、ファイルが開かれた時点でファイルの先頭に位置しています。
●配列の末尾に要素を追加するには、「$配列名[]=値;」の形式で設定します。
◆◆◆◆まとめ(3時限目)◆◆◆◆
●正規表現パターンを利用することで、非定型のデータから特定の文字列を取り出したり、置換えを行なうことができます。
●正規表現のマッチングを行なうには、ereg/eregi関数を利用します。
●正規表現による置き換え、分割を行なうには、ereg_replace/eregi_replace、split/spliti 関数を使用します。
●正規表現による置換えでは、置換え後の文字列にマッチングした文字列を含めることができます。
●日本語を含む正規表現パターンを利用する場合は、マルチバイト関数を利用してください。