php メソッドで相対パスを絶対パスに変換します。これは preg_replace() 関数を通じて実現できます。 preg_replace() 関数は、正規表現の検索と置換を実行できます。検索対象が文字列配列の場合、この関数は配列を返します。
#preg_replace() 関数を使用して、相対パスを絶対パスに変換できます。
(推奨学習: php チュートリアル)
関数の紹介
preg_replace() 関数は、正規表現の検索と置換を実行します。
関数構文
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
件名内のパターンに一致する部分を検索し、置換に置き換えます。
パラメータの説明:
$pattern: 検索するパターン。文字列または文字列配列にすることができます。
$replacement: 置換に使用される文字列または文字列配列。
$subject: 検索および置換されるターゲット文字列または文字列配列。
$limit: オプション。パターンごとの各件名文字列の置換の最大数。デフォルトは -1 (制限なし) です。
$count: オプション、置換が実行される回数。
戻り値
subject が配列の場合、preg_replace() は配列を返し、それ以外の場合は文字列を返します。
一致するものが見つかった場合は、置換された件名が返され、そうでない場合は、変更されていない件名が返されます。エラーが発生した場合は NULL が返されます。
コード実装:
//相对路径转化成绝对路径 <? function relative_to_absolute($content, $feed_url) { preg_match('/(http|https|ftp):///', $feed_url, $protocol); $server_url = preg_replace("/(http|https|ftp|news):///", "", $feed_url); //开源OSPhP.COM.CN $server_url = preg_replace("//.*/", "", $server_url); if ($server_url == '') { return $content; } if (isset($protocol[0])) { //开源代码OSPhP.COm.CN $new_content = preg_replace('/href="//', 'href="'.$protocol[0].$server_url.'/', $content); $new_content = preg_replace('/src="//', 'src="'.$protocol[0].$server_url.'/', $new_content); //开源OSPhP.COM.CN } else { $new_content = $content; } return $new_content; } ?>
以上がPHPで相対パスを絶対パスに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。