スレッド表示 | フラット表示〕 全トピック 920 件中 217 番目 次≫ ≪前

PHPからhtmlをブラウズ

created: 2006-07-24 14:56 | modified: 2006-07-25 12:08 | reply: 2

[3172] PHPからhtmlをブラウズ

user: るら | created: 2006-07-24 14:56
PHPプログラムから異なる階層にあるhtmlファイルを読み込み、表示したいと考えております。

例)「script.php」から「../fol1/temp1.html」や「./fol2/temp2.html」を読み込み表示する。

この際に読み込むhtml側の「href」「src」といったリンク先の相対パスを、PHPプログラムから見た相対パスに修正して表示したいと思います。
htmlファイルを1行ずつ読み込み、正規表現で置換するところまではわかるのですが、実際にどのように置換していいかをわからずに困り果てております。
ご教授よろしくお願いいたします。
reply: 3174 返信 編集 削除

[3174] 相対URL変換

user: ゆうじ | created: 2006-07-25 01:13
こんばんわ。

同じようなことで頭を悩ましたことがあります。
相対パスは、検索エンジン対策として不利になる

# ../index.html と ./script/index.htmlが同じファイルを
# 示してたとしても、Google君は、別のページと認識します。

ので、結局全て、絶対URLに統一しました。
この方が、すっきりして、頭を悩ますこともありません。


どうしても相対URLということで考えてみましたが、
要は、全て絶対パスに直してから、
script.php の絶対パスと比較&置き換えを行えば
相対パスに出来そうですけど、
考えるほど混乱しますし、説明が大変ですね。

せめて、../fol1/temp1.html に書いてあるURLを、
ドキュメントルートからのURLに統一しておけば、
このページの関数が使えるのですけど。
http://www.sound-uz.jp/php/note/relativePath

この関数では、/ でURLを分解して、
初めの要素から順番に比較し、違う要素が出てきたところから
2つのURLの関係を追いかけて、相対パスを求めています。
この関数が少しでも参考になればと思います。
Parent: 3172  reply: 3175 返信 編集 削除

[3175] Re.相対URL変換

user: るら | created: 2006-07-25 12:08
同じようなことで頭を悩ましたことがあります。
相対パスは、検索エンジン対策として不利になる

# ../index.html と ./script/index.htmlが同じファイルを
# 示してたとしても、Google君は、別のページと認識します。

ので、結局全て、絶対URLに統一しました。
この方が、すっきりして、頭を悩ますこともありません。


どうしても相対URLということで考えてみましたが、
要は、全て絶対パスに直してから、
script.php の絶対パスと比較&置き換えを行えば
相対パスに出来そうですけど、
考えるほど混乱しますし、説明が大変ですね。

せめて、../fol1/temp1.html に書いてあるURLを、
ドキュメントルートからのURLに統一しておけば、
このページの関数が使えるのですけど。
http://www.sound-uz.jp/php/tips/file.html#D01

この関数では、/ でURLを分解して、
初めの要素から順番に比較し、違う要素が出てきたところから
2つのURLの関係を追いかけて、相対パスを求めています。
この関数が少しでも参考になればと思います。
BBS投稿後にこの関数の存在に気づき、参考にさせていただいております。
2つのURLの関係は様々なパターンがあるので、全てをカバーするのは大変そうです。
もう少し、頭を悩ませてみたいと思います。
アドバイスありがとうございました。
Parent: 3174  返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 920 件中 217 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑