PHPでWebページのソースを取得して
そのソースの中の<img>タグの
src属性がもしhttp://で始まらなかった場合
取得したURLをsrc属性に加える方法はないでしょうか?
例
URL=http://www.○○.com
ソース
<img src="/image/01.jpg">
↓
<img src="http://www.○○.com/image/01.jpg">
に変更したいです。
よろしくお願いします。
No.1
- 回答日時:
正規表現で置換すれば所望のことはできます。
<?php
$html=<<<EOD
<img src="/image/01.jpg">
<img src="http://www.○○.com/image/02.jpg">
<img src="/image/03.jpg">
EOD;
$ptn='|<img\s+src\s*=\s*"(/[^>]*>)|';
$replace='<img src="http://www.○○.com$1';
$html=preg_replace($ptn,$replace,$html);
echo $html;
?>
但し上記例は 相対パスでのリンクまでは対応していません。
回答していただきありがとうございました。
二方のアドバイスにより無事問題を解決することができました。
本当にありがとうございました。
また、質問する機会がありましたらよろしくお願いします。
No.2ベストアンサー
- 回答日時:
ファイルを読み書きしながら、
str_replace("src=\"/image","src=\"http://www.example.com/image",data);
のようにすればいいと思います。
あるいは、imgタグだけじゃなくてaタグも含めて、urlにhttp://~を追加したいのなら、baseタグを使うことを考えても良いでしょう。
<html><head>
<base href="http://www.example.com/">
</head><body>
<a href="/next/page.html">つぎ</a>
<img src="/image/01.jpg">
</body></html>
と書くと、リンク先や画像の場所はwww.example.comになります。
取得したソースのhead部分にbaseタグを挿入することで画像を表示することができました。
迅速で的確な回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- Perl 画像が表示でnull; this.src 1 2022/04/19 11:31
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS 【HTML】【CSS】【Swiper】 元の画像は横1200×縦600なのですが、実際のサイト上に反 5 2022/07/16 13:57
- HTML・CSS ブロックエディターで作りつつ、画像を挿入しつつ、画像にスタイルシートのコードを付ける方法はありますか 1 2022/08/23 18:46
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP PHP echo バックスラッシュの使い方 img要素 2 2023/01/08 22:46
- HTML・CSS CSSのホバーエフェクト 1 2023/06/19 06:53
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
こちらはただの直列処理ですか?
-
PHPでこのコード自体に意味は無...
-
PHP一覧表示した項目にリンクを...
-
PHPSpreadsheetを使って関数を...
-
アップロード画像数でCSSを分け...
-
ワードプレスサイト PHP8.0.25...
-
入力フォームの空白や改行を制...
-
オススメのプログラミングスク...
-
htmlのエラーについて(デバッグ)
-
SFTPなどは使わないホームペー...
-
php 完了画面の送信メールのコ...
-
phpでPEAR::DBを使っているので...
-
index.phpって何ですか? 具体...
-
PHP8を使うと、大量のWarningが...
-
掲示板のセキュリティについて...
-
メールフォームのタイトルが文...
-
php 入力画面から確認表示画面...
-
ワードプレスプラグイン MW WP ...
-
phpのメールフォームの完了画面...
-
PHPとHTML+Xamppの掲示板で画像...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
phpでcookieがうまく保存されない
-
index.phpに入るには、どうすれ...
-
PHP8を使うと、大量のWarningが...
-
PHPSpreadsheetを使って関数を...
-
重複を防ぐ記述について教えて...
-
index.phpって何ですか? 具体...
-
awsにApacheとPHPを入れて、何...
-
phpでPEAR::DBを使っているので...
-
php 確認表示画面で値をSESSION...
-
PHPでユーザー情報を入力して簡...
-
ワードプレスサイト PHP8.0.25...
-
php 完了画面の送信メールのコ...
-
SFTPなどは使わないホームペー...
-
PHPのセッション有効期限について
-
csvファイルについて教えて下さ...
-
PHPとHTML+Xamppの掲示板で画像...
-
PHPで訪問回数を表示するカウン...
-
ファイルアップロードに関して...
-
掲示板を作成しておりアップロ...
-
Q&Aサイトを作成していてURLの...
おすすめ情報