PHPでファイルを読み込みその内容を表示するコードと実行結果を紹介します。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$file = 'data.txt';
$text = file_get_contents($file);
$text = htmlspecialchars($text);
?>
<textarea name="contents" cols="80" rows="10"><?php echo($text); ?></textarea>
</body>
</html>
変数に開くファイル名を代入します。(代入が必須ではありません。直接 file_get_contents('data.txt')としても問題ありません。)
$file = 'data.txt';
file_get_contents()関数を呼び出しファイルの内容をすべて読み出します。読み出した内容は$text変数に代入されます。
$text = file_get_contents($file);
htmlspecialchars()関数を呼び出し、特殊文字をHTMLエンティティに変換します。
具体的には
$text = htmlspecialchars($text);
textareaタグ内に変換後の$text変数の内容を出力します。テキストボックス内にファイルの内容が表示されます。
<textarea name="contents" cols="80" rows="10"><?php echo($text); ?></textarea>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<textarea name="contents" cols="80" rows="10">
<?php
$file = 'data.txt';
$text = file_get_contents($file);
$text = htmlspecialchars($text);
echo($text);
?>
</textarea>
</body>
</html>
textareaタグ内にPHPのコードを記述した場合、インデントやタブなどにより表示するテキストの手前に空白が入ってしまいます。先のコード例のようにtextareaタグ内には変数の出力コードのみを記述したほうがよさそうです。