如何从 iTunes url 获取 ID?
How to get the ID from itunes url?
我需要从 iTunes url 中获取项目 ID,在 iTunes 更改 url 结构之前,它曾经是这样工作的;
$musicid = 'https://itunes.apple.com/album/the-endless-bridge-single/id1146508518?uo=1&v0=9989';
$musicid=explode('/id',$musicid);
$musicid=explode('?',$musicid[1]);
echo $musicid[0];
但是现在iTunes已经删除了url中的'id'前缀所以上面的代码没有returnid了,有谁知道解决办法吗?
旧 itunes url; https://itunes.apple.com/album/the-endless-bridge-single/id1146508518?uo=1&v0=9989
新 iTunes url; https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989
你会在第四条斜杠上爆炸,抓住第五段。
只需从 /id
中删除 id
(这样你 explode()
就可以在 /
上),并检查第六个索引而不是第二个(使用 [5]
而不是 [1]
):
<?php
$musicid = 'https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989';
$musicid = explode('/', $musicid);
$musicid = explode('?', $musicid[5]);
echo $musicid[0]; // 1146508518
这可以看出有效here.
希望对您有所帮助! :)
使用正则表达式:
<?php
$url = 'https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989';
preg_match('/album\/[^\/]+\/(\d+)\?/', $url, $matches);
var_dump($matches[1]);
看起来您可以简单地使用 parse_url
和 basename
的组合,例如
$musicid = basename(parse_url($musicid, PHP_URL_PATH));
我需要从 iTunes url 中获取项目 ID,在 iTunes 更改 url 结构之前,它曾经是这样工作的;
$musicid = 'https://itunes.apple.com/album/the-endless-bridge-single/id1146508518?uo=1&v0=9989';
$musicid=explode('/id',$musicid);
$musicid=explode('?',$musicid[1]);
echo $musicid[0];
但是现在iTunes已经删除了url中的'id'前缀所以上面的代码没有returnid了,有谁知道解决办法吗?
旧 itunes url; https://itunes.apple.com/album/the-endless-bridge-single/id1146508518?uo=1&v0=9989
新 iTunes url; https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989
你会在第四条斜杠上爆炸,抓住第五段。
只需从 /id
中删除 id
(这样你 explode()
就可以在 /
上),并检查第六个索引而不是第二个(使用 [5]
而不是 [1]
):
<?php
$musicid = 'https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989';
$musicid = explode('/', $musicid);
$musicid = explode('?', $musicid[5]);
echo $musicid[0]; // 1146508518
这可以看出有效here.
希望对您有所帮助! :)
使用正则表达式:
<?php
$url = 'https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989';
preg_match('/album\/[^\/]+\/(\d+)\?/', $url, $matches);
var_dump($matches[1]);
看起来您可以简单地使用 parse_url
和 basename
的组合,例如
$musicid = basename(parse_url($musicid, PHP_URL_PATH));