在$ _GET变量中爆炸和管道

时间:2011-10-31 13:29:09

标签: php pipe explode

我正在使用URL传递一些数据,而我正在尝试使用管道来分隔数据的不同部分。例如,我要发送的其中一个部分是课程代码,例如“COP211 | 212 | 213”,我有一个会爆炸这些部分的功能

explode("|",$code);

其中$ code来自url - 类似于coursecode.php?q = COP211 | 212 | 213

问题是爆炸没有做任何事情!我试过爆炸('|',爆炸(“|”,爆炸(“/ |”并且没有任何作用,字符串通过管道完好无损)。 具体地,

strpos($code, "|");

总是返回FALSE。

编辑以澄清

var_dump($code);
if(strpos($code, "|") !== FALSE) { // Manage slashed courses
    $cid = explode("|", $code);
}
var_dump($cid);

var_dump($ code)返回字符串,全部为一个整体。

strpos($ code,“|”)总是返回false,即使|在场。

var_dump($ cid)不是数组,它又是字符串。

这是编码问题还是其他问题,因为它首先通过网址?

帮助!

1 个答案:

答案 0 :(得分:1)

首先,使用$_GET确保var_dump($_GET)包含某些内容。

您的第二个问题是explode() 将爆炸的字符串作为数组返回。要替换$code的内容,请执行以下操作:

$code = explode('|', $code);