strpos
是否工作取决于解析的字符串源(手动输入或由第三方机制提供):
index.php?option=com_ars&view=release&id=8
strpos指令是
$debug = "found '?' : " . ((strpos($url, '?') === false) ? 'false' : 'true');
strpos总是返回false。
我尝试了mb_strpos
,我尝试了各种编码,但都无济于事(utf8_encode
、utf8_decode
,甚至使用sprintf
、iconv
…)
我要知道的最好的提示是,当字符串由第三方机制提供时,convert_uudecode
会出现错误
Warning: convert_uudecode(): The given parameter is not a valid uuencoded string
而对于手动输入,则返回8AX9|�3英寸.
我根本不是php专家,但这让我想到了一个字符集问题。
你知道我该怎么做吗?
首先,我看到有一个括号"("太多了。(你有3个开头的"(",2个结尾的")")
其次,如果你想让变量$ok为真,如果他找到了"?"符号,那么你应该用!==测试
$ok = strpos($url, '?') !== false;
如果找到引号"?",$ok现在将为true。