"> "> " />

URLから画像の名前を取得するにはどうすればよいですか?

私は小さな質問があります。 PHPでは、カールを使用してURLからデータを取得しています。

$url = "http://www.prelovac.com/vladimir/wp-content/uploads/2008/03/example.jpg";

これで私は配列を与えた curl_getinfo()を使います:

Array
(
[url] => http://www.prelovac.com/vladimir/wp-content/uploads/2008/03/example.jpg
[content_type] => image/jpeg
[http_code] => 200
[header_size] => 496
[request_size] => 300
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 2.735
[namelookup_time] => 0.063
[connect_time] => 0.063
[pretransfer_time] => 0.063
[size_upload] => 0
[size_download] => 34739
[speed_download] => 12701
[speed_upload] => 0
[download_content_length] => 34739
[upload_content_length] => -1
[starttransfer_time] => 1.282
[redirect_time] => 0
)

How can I get the name of the image in the link [url] => http://www.prelovac.com/vladimir/wp-content/uploads/2008/03/example.jpg such as

[image_name] : example
[image_ex] : jpg

ご意見ありがとうございます!

8
厳密に言えば、イメージの名前ではありませんが、Web上のほとんどのエンティティには名前がないので、ほとんどのブラウザはほとんどの場合ブラウザが保存する名前ですが、それは良い選択です。 prelovac.com担当者が本当に名前を設定したいと思っていたら、彼らはcontent-dispositionヘッダーを使用していました。ブラウザはそれを無視してもかまいませんが、大部分のユーザーが保存したファイルを表示する場合は、最初に調べて、URIのパス情報がない場合はそれを調べてください。
追加された 著者 Jon Hanna,

7 答え

8
追加された
上記のリンクを得られない人にとっては、 php.net/manual/です。 en/function.pathinfo.php
追加された 著者 NoReceipt4Panda,
ありがとうTobi、それは働いた! :D
追加された 著者 johnITBonuc,
$url_arr = explode ('/', $arr['url']);
$ct = count($url_arr);
$name = $url_arr[$ct-1];
$name_div = explode('.', $name);
$ct_dot = count($name_div);
$img_type = $name_div[$ct_dot -1];

echo $name . "  " . $img_type;
4
追加された

いつかurlに追加のパラメータが追加されます。このようなシナリオでは、最初にパラメータセクションを削除してから、PHPの組み込みのpathinfo()関数を使用してURLからイメージ名を取得できます。

$url = 'http://images.fitnessmagazine.mdpcdn.com/sites/story/shutterstock_65560759.jpg?itok=b8HiA95H';

イメージURLにパラメータが追加されているかどうかを確認します。

if (strpos($url, '?') !== false) {
    $t = explode('?',$url);
    $url = $t[0];            
}      

結果のurl変数には

http://images.fitnessmagazine.mdpcdn.com/sites/story/shutterstock_65560759.jpg

pathinfo()を使用して、希望の詳細を取得します。

$pathinfo = pathinfo($url);
echo $pathinfo['filename'].'.'.$pathinfo['extension'];

これにより、shutterstock_65560759.jpgが出力されます。

4
追加された
あなたの答えの質を向上させるための説明を追加してみてください
追加された 著者 Minzkraut,

画像パスは次のように考えてください  $ image_url = ' http:// development/rwc/wp-content/themes /Irvine/images/attorney1.png '; このurlから、関数basename()の後に拡張名を使用してイメージ名を取得します。 次のコードを見る

コード:

$image_url='http://development/rwc/wp-content/themes/Irvine/images/attorney1.png';
echo basename($image_url);

出力: attorney1.png

3
追加された
$imagePath = 'http://www.prelovac.com/vladimir/wp-content/uploads/2008/03/example.jpg';

$imageName = get_basename($imagePath);

function get_basename($filename)
{
    return preg_replace('/^.+[\\\\\\/]/', '', $imagePath);
}
1
追加された
$URL = urldecode('http://www.greenbiz.com/sites/default/files/imagecache/wide_large/Woman_HORIZ.jpg?sunny=20$mal+1');
$image_name = (stristr($URL,'?',true))?stristr($URL,'?',true):$URL;
$pos = strrpos($image_name,'/');
$image_name = substr($image_name,$pos+1);
$extension = stristr($image_name,'.');
if($extension == '.jpg' || $extension == '.png' || $extension == '.gif' || $extension == '.jpeg'){`enter code here`
print $image_name;
}
1
追加された
これを一度に行うことができるPHP関数があります。
追加された 著者 transilvlad,
$url ='http://hhhhhh.com/content/thees/Irvine/images/hdahdahat.png';
$img = explode(".", basename($url));

echo $img['0'];
1
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com