人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで質問です。
指定したサイトのコメントタグ間のテキスト(タグを含む)を抜き出して、サイト上に表示するコードを書いて下さい。
<!--start-->必要html<!--end-->

●質問者: trick_og
●カテゴリ:インターネット ウェブ制作
✍キーワード:HTML PHP コメント コード サイト
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● rewish
●80ポイント ベストアンサー

例で示されているHTMLのようなシンプルさならexplode関数でいけると思います。

<?php
// ファイル取得
$fgc = file_get_contents('example.html');

// startで区切って配列化
$fgc = explode('<!--start-->', $fgc);

// 配列をendでもう一度区切る
$fgc = explode('<!--end-->', $fgc['1']);

// 配列の一番目の必要HTMLが入る
echo $fgc['0'];

こんな感じでどうでしょうか。


PHP: file_get_contents - Manual

PHP: explode - Manual

◎質問者からの返答

ご回答ありがとうございます。

無事動作致しました。

誠にありがとう御座います。


2 ● pahoo
●80ポイント

こんな感じでいかがでしょうか。

<?php
mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');

$url = 'http://hogehoge'; //対象URL
$contents = file_get_contents($url);
if ($contents == FALSE) exit(1); //read error
$contents = mb_convert_encoding($contents, 'UTF-8', 'auto'); //autoで無い方が良い

preg_match("/(<\!--start-->)(.*)(<\!--end-->)/smu", $contents, $arr);
echo nl2br(htmlspecialchars($arr[0]));
?>

内部処理は UTF-8 で行っていますが、あらかじめ入力コンテンツの文字コード型が明らかであるなら、mb_convert_encoding で明示してください。

◎質問者からの返答

ご回答ありがとうございます。

掲載頂いたコードで無事動作致しました。

誠にありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ