テキストファイルを読み込む、ファイルのテキストを1行ずつ処理する、テキストを分割して処理する
PHPを使用してテキストファイルを読み込む
1.テキストファイルとPHPファイルを「C:\xampp\htdocs\sample」に保存する
2.PHPファイルを以下のように編集する
<!DOCTYPE html
PUBLIC" -//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtmll/DTD/xhtmll-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 readfile("data.txt");?></p>
</body>
</html>
確認
Googlechromeで「http://localhost/sample/index.php」にアクセス後
「テキストファイル読込成功!!」が表示されていることを確認する
今回使用した関数
今回使用したPHPのスクリプトは、ボディ部分に記載されている1行の関数のみです。
<?php readfile("data.txt");?>
この「readfile」というのがその後の()内に指定したファイルを読み込んでその場に書き出す関数です。テキストを表示したい場所に
これを書いておくだけで、そこにファイルの中身が書き出されます。
echoで出力しなくてもよい。ただし、複数行のテキストが書いてあっても
改行されないで表示される
ファイルのテキストを1行ずつ処理のプログラムを作成
index.phpを以下のように編集する
<?php
$result ="";
$lines = @file("data.txt") or $result ="ファイルが読めません.";
if($lines != null){
for($i=0;$i<count($lines);$i++){
$result.=($i+1).":".$lines[$i]."<br>";
}
}
?>
<!DOCTYPE html
PUBLIC" -//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtmll/DTD/xhtmll-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>
確認
Googlechromeで「http://localhost/sample/index.php」にアクセス後
「〇行目読込成功」が表示されていることを確認する
今回使用した関数
file関数
・処理内容
「ファイルの中身をまるごと読込、1行ずつ配列にまとめて返す」
$変数=file(ファイルの指定);
このようにすると、引数に指定したファイルを読み込んで、1行ずつわけてまとめた配列を返します。
※ただしファイルの読み込みに失敗した場合の処理はできない処理を追加する場合は以下の通り
$変数=file(ファイルの指定)or 失敗時の処理;
テキストを分割して処理のプログラムを作成
data.txtを以下のように編集する
太郎,[email protected],090-9999-9999
花子,[email protected],090-8888-8888
イチ,[email protected],090-7777-7777
index.phpを以下のように編集
<?php
$lines=@file("data.txt") or $result="ファイルが読めません";
if($lines != null){
$result ='<table border="0">';
$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/xhtmll/DTD/xhtmll-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>
<style>
h1{font-size:18pt;font-weight:bold;color:#666;}
body{fontsize:13pt;color:#666;margin5px 25px;}
tr{margin:5px;}
th{padding:5px;color:white;background:darkgray;}
td{padding:5px;color:black;background:#e0e0ff;}
</style>
</head>
<body>
<h1>Hello PHP!</h1>
<p><?php echo $result; ?></p>
</body>
</html>
確認
Googlechromeで「http://localhost/sample/index.php」にアクセス後
data.txtに保存した値が表示されていることを確認する
以上
Author And Source
この問題について(テキストファイルを読み込む、ファイルのテキストを1行ずつ処理する、テキストを分割して処理する), 我々は、より多くの情報をここで見つけました https://qiita.com/jwpks313/items/cb18a6d20a743a89c802著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .