从字符串中检索参数

时间:2011-01-29 14:59:47

标签: php

index.php?option=com_virtuemart&Itemid=210&category_id=12&lang=is&limit=20&limitstart=180&page=shop.browse

我希望从字符串中检索 Page 参数,如果该页面参数等于“ shop.browse ”,则返回真正的布尔值。

编辑:ps。字符串并不总是这样,但它总是包含page =参数

我一直在搞乱strpos功能和其他人,我不能让这个工作,我很快就需要这个代码,所以如果有人能指出我在最佳方法的正确方向。

由于

4 个答案:

答案 0 :(得分:5)

首先使用parse_url获取查询部分,然后使用parse_str获取值:

$query = parse_url($str,PHP_URL_QUERY);
parse_str($query, $match);
if ($match['page'] === 'shop.browse') {
    // page=shop.browse
}

请注意,这假设您的字符串存储在变量$str中。

答案 1 :(得分:1)

检查parse_url()功能。

答案 2 :(得分:0)

整个事情:

<?php

$url = "index.php?option=com_virtuemart&Itemid=210&category_id=12&lang=is&limit=20&limitstart=180&page=shop.browse";
$url = parse_url($url);
parse_str($url['query'], $output);
if($output['page'] == "shop.browse")
{
  //stmts
}
else
{
  //stmts
}

答案 3 :(得分:0)

$ str = explode(“?”,$ url);

$ str = explode(“&amp;”,$ str [1]);

foreach($ str as $ k =&gt; $ v){

$ xxx = explode(“=”,$ v);

$ output [$ xxx [0]] = $ output [$ xxx [1]];

}

echo $ output [“page”];

这样您就可以获得映射到其键的所有参数。你获得了类似$ _GET / $ _ POST东西的东西。