如何从下面的字符串中获取我的话?

时间:2012-12-18 18:09:42

标签: php regex string

我在PHP中有两个字符串:

$Str1 = "/welcome/files/birthday.php?business_id=0";
$Str2 = "/welcome/index.php?page=birthday";

我必须通过一个函数从这两个字符串获得生日。 我需要一个能在两种情况下都返回生日的函数。

例如

function getBaseWord($word){ 
    ...
    return $base_word;
}

getBaseWord('/welcome/files/birthday.php?business_id=0');
getBaseWord('/welcome/index.php?page=birthday');

两个函数调用都应返回“birthday”。

我该怎么做。

3 个答案:

答案 0 :(得分:1)

所以你需要做的是从字符串中获取所有实际的GET变量:

//Seperate the URL and the GET Data
list($url,$querystring) = explode('?', $string, 2);

//Seperate the Variable name from its value
list($GETName, $GETValue) = explode("=", $querystring);

//Check to see if we have the right variable name
if($GETName == "page"){
    //Return the value of that variable.
    return $GETValue;
}

注意

这是非常基本的,不会接受多于一个GET参数。如果您计划有更多变量,则需要对其进行修改。

答案 1 :(得分:1)

如果我正确理解你想要做什么,那么这应该做你需要的:

function getWord(){
     return $_GET['page'];
}

或$ _GET ['business_id'];

我认为$ _GET是一个由发送到页面的GET请求组成的关联数组。关联数组是指您访问类似['元素名称']而不是[1]或[2]或其他内容的数组。

答案 2 :(得分:0)

我不知道你在谈论什么但是,你可以用str_replace剪切“birthday”这个词并用另一个词替换,或者你可以找到stripos的位置,我不知道我们在这里想做什么,所以那些是我脑海中唯一的东西