如何只回显/打印某个输入?

时间:2014-03-05 17:14:39

标签: php

我想回显/打印一段输入。例如,我有这个youtube url http://www.youtube.com/watch?v=p963CeTtJVM我怎么能只回显输入的最后一段:“p963CeTtJVM”。据我所知,他们总是有11个符号。

代码:

if (empty($_POST["website"]))
 {$website = "";}
else
 {
 $website = test_input($_POST["website"]);
 // check if URL address syntax is valid (this regular expression also allows dashes in   the URL)
 if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website))
   {
   $websiteErr = "Invalid URL"; 
   }
 }

5 个答案:

答案 0 :(得分:1)

list ($void, $query_string) = split('?', $url); // or list(,$qs)
parse_str($query_string, $data);
var_dump($data);

对于此特定字符串substr($ str,-11)将采用最后11个字符,但不包括其他标记。查看parse_str,从长远来看,这可能会让您头疼。

答案 1 :(得分:0)

您可以使用substr方法返回字符串的一部分。

答案 2 :(得分:0)

您可以使用explode功能将视频ID与链接的其余部分分开,如下所示:

$array = explode("=", $website);
echo $array[1];

答案 3 :(得分:0)

我希望它可以帮到你。

 <?php

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

 $urlParts = explode('v=', $url);

 if (count($urlParts) == 2 && isset($urlParts[1])) {
     echo "youtube code : {$urlParts[1]}";
 } else {
     echo "Invalid Youtube url.";
 }

答案 4 :(得分:0)

parses the URL into its component parts,然后是parses the query string into an associative array

$url = parse_url($url);

parse_str($url['query'], $params);

$v = $params['v'];