【问题标题】:Get some value from url?从 url 获得一些价值?
【发布时间】:2013-11-10 07:23:09
【问题描述】:

我有这种来自youtube的url,有视频的价值

$url='http://www.youtube.com/watch?v=H_IkPia6eBA&';

在这种情况下,我需要的只是获取值为 V 等的新字符串

$newstring='H_IkPia6eBA&';

我不知道V可以有多长,我只需要得到V的值,我试过了

$string = 'http://www.youtube.com/watch?v=oYyslNuRcwM';
$url = parse_url($string);
parse_str($url['query'], $query);

print_r($query);

试过这个,但在 CodeIgniter 帖子中,我只得到空数组?

【问题讨论】:

  • 查看answer
  • 您的代码非常适合我,只需复制粘贴即可,我得到:Array ( [v] => oYyslNuRcwM )
  • 您确定$string 已设置吗? var_dump($string); 输出什么?此外,将 ini_set('display_errors',1); error_reporting(E_ALL); 添加到 PHP 代码的顶部并刷新页面。这会输出任何错误吗?

标签: php arrays string youtube


【解决方案1】:

你已经快到了。

<?php
 $string = 'http://www.youtube.com/watch?v=oYyslNuRcwM';
 $url = parse_url($string);
 parse_str($url['query'], $query);
 $newstring=$query["v"];   // just this line is missing
 echo $newstring;
?>

Demo

但是你知道吗?如果 url 格式总是这样,那么不需要所有这些功能。那么它可以简单地是

<?php
$url='http://www.youtube.com/watch?v=H_IkPia6eBA&';
echo str_replace("http://www.youtube.com/watch?v=","",$url);
?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-21
    • 1970-01-01
    • 2023-01-07
    • 2020-01-12
    • 2020-02-23
    • 2016-10-20
    • 2018-04-08
    • 2012-06-24
    相关资源
    最近更新 更多