Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php获取url中第二个斜杠后的字符串?_Php_String_Url_Character_Slash - Fatal编程技术网

如何使用php获取url中第二个斜杠后的字符串?

如何使用php获取url中第二个斜杠后的字符串?,php,string,url,character,slash,Php,String,Url,Character,Slash,如何获取url中第二个斜杠后的字符串?URL每次都是不同的(更多的斜杠),但每次我都需要在第二个斜杠之后的整个文本。怎么做 我正在使用以下代码: <?php $str = "$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; $last = substr($str, strrpos($str, '/') - 1); echo $last; ?> …但它在斜杠后的一些字符上工作 非常感谢您的帮助。 <?php

如何获取url中第二个斜杠后的字符串?URL每次都是不同的(更多的斜杠),但每次我都需要在第二个斜杠之后的整个文本。怎么做

我正在使用以下代码:

<?php
    $str = "$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
    $last = substr($str, strrpos($str, '/') - 1);
    echo $last;
?>

…但它在斜杠后的一些字符上工作

非常感谢您的帮助。


<?php
    $str = "google.com/whatever/hello";

    $last = GetStringAfterSecondSlashInURL($str);

    echo $last;

    function GetStringAfterSecondSlashInURL($the_url)
    {
        $parts = explode("/",$the_url,3);

        if(isset($parts[2]))
            return $parts[2];
    }

?>
使用


raw
$str
的输出是什么?你指的是什么斜杠?协议1或子文件夹/重写?谢谢,就这样-顺便说一句。安全吗?当然可以,但如果你想,你可以像“if(isset($last[2])){//do sth}”这样检查它
$last = explode("/", $str, 3);
echo $last[2];
    <?php
        $str = "$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
        $last = explode("/",$str,3);// so at second index rest of the string will come.
echo $last[2];