太郎,taro@yamada.jp,090-9999-9999ここでは、個人情報(名前、メールアドレス、電話番号)をカンマで区切り、1行ずつ改行してデータを記述してあります。このようにすれば、1行ずつデータを取り出し、そこから各項目の値を取り出して処理することができそうですね。
花子,hanako@flower.fr,080-8888-8888
イチロー,ichiro@baseball.com,070-7777-7777
$arr = explode(",",$lines[$i]);これが、$lines[$i]のテキストをカンマで分割しているところです。「explode」というのは、1つ目の引数に指定した文字を使って、2つ目の引数のテキストを分割し、配列にまとめて返すという関数です。ここでは","と1つ目の引数に指定をしていますね? これにより、2つ目の引数のテキストをカンマで分割していたのです。分割された配列のテキストからは、カンマは消えています。つまり、explodeで分割すると、区切り文字はなくなるので注意しましょう。
$変数 = implode( 区切り文字 , 配列 );この「implode」関数を使うと、配列の各要素のテキストを、区切り文字で挟んで1つのテキストにまとめます。つまり、explodeで分解した配列を、これでもとに戻せるというわけです。セットで覚えておきましょう。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
<?php $lines = @file("data.txt") or $result = "ファイルが読めません。"; if ($lines != null){ $result = '<table border="1">'; $result .= "<tr><th>NAME</th><th>MAIL</th><th>TEL</th></tr>"; for($i = 0;$i < count($lines);$i++){ $result .= "<tr>"; $arr = explode(",",$lines[$i]); for($j = 0;$j < 3;$j++){ $result .= "<td>{$arr[$j]}</td>"; } $result .= "</tr>"; } $result .= "</table>"; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>sample page</title> </head> <body> <h1>Hello PHP!</h1> <p><?php echo $result; ?></p> </body> </html>
<< 前へ | 次へ >> |