編集:私のマークが指摘したように、私が望んでいたURLを実現するには、それを正規化/正規化する必要があります. これを達成するには、 Marc によって提案された pear クラスなどのクラスを使用するか、php の realpath を試すことができます。ここで見つけたもののような代替品; これはかなりうまく機能しているように見えました。
注: Christian Sciberrasによって作成された realpath の代替 (truepath)は、 Sven Arduwies のオリジナル スクリプトの修正版です。
以下は疑似 HTML です。
<body><img src="../resources/image.jpg"></body>
PHPは次のとおりです。
$doc = new DOMDocument();
$doc->loadHTMLFile("http://www.foobar.com/project/");
$imageList = $doc->getElementsByTagName("img");
$imageCnt = $imageList->length;
for ($idx=0; $idx<$imageCnt; $idx++) {
echo $imageList->item($idx)->getAttribute("src");
}
結果は次のようになります。
../resources/image.jpg
しかし、実際には、私が欲しいのは次のとおりです。
http://www.foobar.com/resources/image.jpg
入力イメージ パスは常に一貫しているわけではありません。それらは絶対パスまたは相対パスである可能性があり、必ずしも同じドメインからではなく、明らかに常に同じパスであるとは限りません。