1

FacebookのようなURLを取得しています。そのページのすべての画像について、私はそれらを取得します

$src = $tag->getAttribute('src');

外国のサイトが画像への完全な Web パスを設定している場合、問題なく動作します。ただし、相対パスのみを使用する場合があり、壊れた画像が返されます。

私は完全なURLを持っているので、$srcにまたはが含まれているかどうかを確認する方法はありますhttp://https?

そうでなければ、私はできる

$src = $link . '/' . $src; 

それらの相対的なイメージのために。試してみましたが、表示されます。しかし、すでに持っている場合は、パスとして表示されず、二重の URL が含まれます。

4

2 に答える 2

2

使用strpos:

if(strpos($src,'http://')===0 || strpos($src,'https://')===0){
  // full url provided
}else{
  // add domain here
}

戻り値(見つからない) と(位置 0 で見つかる) を区別する===だけでなく、を使用する必要があることに注意してください。==false0

于 2012-05-08T06:07:48.260 に答える
0

こんにちはあなたはそれのために使用することができparse_urlます

<?php
$url = parse_url('https://example.org');

if($url['scheme'] == 'https'){
  // is https;
}

?>

ありがとう

于 2012-05-08T06:10:59.237 に答える