0

我试过用explode做到这一点,但无法得到我想要的。返回一个字符串数组,每个字符串都是通过在字符串分隔符形成的边界上拆分字符串而形成的子字符串。

$var = "ptitl=thiismytitile&bcolor=green&pwspecif=grabthis&auth=1&user=eshu.kotari@gmail.com&pass=secretepass";

$array = explode('&', $var);

它返回像“pwspecif=grabthis”这样的字符串,但我只想要“grabthis”

我想从上面的字符串中抓取这部分“grabthis”。任何人都对此有所了解。

谢谢

问候,莫娜

4

4 回答 4

8

您的变量看起来像一个查询字符串。您可以简单地使用parse_str()函数来解析字符串,就好像它是通过 URL 传递的查询字符串一样。

parse_str($var);
echo $pwspecif;

如果您想确保它不会覆盖当前范围内设置的任何变量,您可以使用第二个参数(感谢 Glavic),如下所示:

parse_str($var, $arr);
echo $arr['pwspecif'];

输出:

grabthis

演示!

于 2013-10-03T13:05:11.097 回答
1
$var = "ptitl=thiismytitile&bcolor=green&pwspecif=grabthis&auth=1&user=eshu.kotari@gmail.com&pass=secretepass";
    $chars = preg_split('/&/', $var, -1, PREG_SPLIT_OFFSET_CAPTURE);
    $chars1=$chars[2][0];
    $arr3=explode('=', $chars1);
    echo $arr3[0];

如果您确定“pwspecif”始终是第三个参数,则使用上面的代码。

于 2013-10-03T13:31:30.437 回答
1

你需要再次炸开绳子=,就像你做的那样&

$value = explode('=',$array[indexhere]); 
$value=$value[1]

indexhere索引pwspecif=grabthis在哪里$array

于 2013-10-03T13:06:29.963 回答
0

If you are sure that "pwspecif" is 3rd parameter always then use the below code.

$var = "ptitl=thiismytitile&bcolor=green&pwspecif=grabthis&auth=1&user=eshu.kotari@gmail.com&pass=secretepass";

$array = explode('=', $var);
$arr2=$array[3];
$arr3=explode('&', $arr2);
echo $arr3[0];
于 2013-10-03T13:18:05.010 回答