如何从itunes url获取ID?

时间:2017-11-08 02:17:40

标签: php itunes

我需要从iTunes网址获取商品ID,并且在itunes更改网址结构之前它曾经像这样工作;

$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删除了网址中的'id'前缀,所以上面的代码不再返回id了,有没有人知道解决方案?

old itunes url; https://itunes.apple.com/album/the-endless-bridge-single/id1146508518?uo=1&v0=9989

new itunes url; https://itunes.apple.com/album/the-endless-bridge-single/1146508518?uo=1&v0=9989

3 个答案:

答案 0 :(得分:1)

你只会在第四个斜线上爆炸,抓住第五个区段。

只需从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

希望这有帮助! :)

答案 1 :(得分:1)

使用正则表达式:

<?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]);

在这里演示:https://3v4l.org/tF9pS

答案 2 :(得分:0)

看起来您可以简单地使用parse_urlbasename的组合,例如

$musicid = basename(parse_url($musicid, PHP_URL_PATH));

演示〜https://eval.in/895029