0

次のように PHP 経由でテキスト ファイルを読み込む場合:

$file_handle = fopen("L:\\file.txt", "rb"); 
while (!feof($file_handle) ) 
{
    $line_of_text = fgets($file_handle); 
    $parts = explode('=', $line_of_text); 
    echo "<option value=\"$parts[0]\">$parts[0]</option>"; 
}
fclose($file_handle);   

... HTML ソース コードは次のようになります。

<option value="AACM
">AACM
</option><option value="Academic Registry
">Academic Registry
</option><option value="Admin
">Admin

.. 等々。非常に厄介!それを防ぐ方法はありますか?理想的には、次のように適切にフォーマットしたいと思います。

<option value="AACM">AACM</option>
<option value="Academic Registry">Academic Registry</option>

...など

これは可能ですか?

ありがとう :)

4

4 に答える 4

2

trim()先頭と末尾の空白を削除する関数を探しています。

于 2012-11-09T14:04:14.527 に答える
2
echo "<option value=\"".trim($parts[0])."\">".trim($parts[0])."</option>"; 
于 2012-11-09T14:03:10.987 に答える
1

これを削除します:

$parts = explode('=', $line_of_text); 

行ごとに何もせずにファイルを読み取る簡単で高速な方法は、次のfile_get_contents() とおりです。echo file_get_contents("L:\\file.txt");

しかし、ファイルを1行ずつ読みたい場合は、

<?php
$filename = "L:\\file.txt";
$fp = fopen($filename, "r") or die("Couldn't open $filename");
while(!feof($fp)) {
   $line = fgets($fp, 1024);
   echo "$line\n";
}
?>

ソース: http://php.net/manual/en/function.file-get-contents.php http://www.codemiles.com/php-tutorials/reading-a-file-line-by-line-in -php-t1484.html

于 2012-11-09T14:09:29.507 に答える
0

私は試していませんが、これはうまくいくはずだと思います:

$file_handle = fopen("L:\\file.txt", "rb"); 
while (!feof($file_handle) ) 
{
    $line_of_text = fgets($file_handle); 
    $parts = explode('=', $line_of_text); 
    $option = "<option value=\"$parts[0]\">$parts[0]</option>";
    $new_option = preg_replace("/[\n\r]/","",$option) . "\n";
    echo $new_option;
}
fclose($file_handle);
于 2012-11-09T14:14:17.697 に答える