[PHP-users 10392] HTMLファイルからの文字列除去

T.Yamamoto php-users@php.gr.jp
Fri, 27 Sep 2002 15:12:33 +0900


こちらでは初めて発言をさせていただきます、山本と申します。

Redhat Linux 7.1上でPHP 4.0.4を動かしてプログラミングをしているのですが、
DB上に登録してあるURLアドレスを参照し、HTMLファイルを file($filename)で
配列に確保し、配列をひとつの文字列変数に変換し表示するというように
プログラムを組んだ場合に、下記のようなHTML情報となり表示画面のデザインが
壊れてしまうんです。

◆サンプル1
<html>
<body>
<table>
  <tr>
    <td>
<html>
<head>
<STYLE TYPE="text/css">
〜
</STYLE>
</head>
<body>
〜
</body>
</html>
    </td>
  </tr>
</table>
</body>
</html>


そのため、ヘッダー情報以外の情報だけに文字列を変換し表示しようと思い、
str_replace()命令やereg_replace()命令で除去しようと試したのですが
ダメでした。
str_replace($exception_html,"",$load_file_data);のような下記の文を除去
しようとした場合にはどのようにしたらいいのでしょうか?
ご存じの方いらっしゃいましたら、宜しくお願いします。

◆サンプル2
$exception_html = <<< EOD
<html>
<head>
<title>除外するHTML</title>
<!--madebywz-->
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META http-equiv="Content-Style-Type" content="text/css">
<STYLE TYPE="text/css">
body    {
	background    : #ffffff;
	margin-height : 0;
	margin-width  : 0;
	margin-top    : 2;
	margin-left   : 2;
	}
.font09 {
	font-size: 9pt;
	line-height: 130%;
	text-decoration: none
	}
.font10 {
	font-size: 10.5pt;
	line-height: 150%;
	text-decoration: none
	}
.font11 {
	line-height: 150%;
	text-decoration: none
	}
.font14 {
	font-size: 14pt;
	line-height: 150%;
	text-decoration: none
	}a:link  {
	color : #000000;
	}
a:visited {
	color : #777799;
	}
a:hover {
	color : #ff0000;
	}
ol      {
	font-size: 10.5pt;
	line-height: 150%;
	}
</STYLE>
</head>
<body>
<center>
EOD;