strpos与字符串不匹配:characterset问题?

时间:2013-11-24 00:50:19

标签: php character-encoding strpos

strpos是否有效取决于解析的字符串源(手动输入或由第三方机制提供):

index.php?option=com_ars&view=release&id=8

strpos指令是

$debug = "found '?' : " . ((strpos($url, '?') === false) ? 'false' : 'true');

strpos总是返回false。

我尝试了mb_strpos,我尝试了各种en / de-coding无效(utf8_encodeutf8_decode,甚至使用sprintficonv ,...)。

我最好提示我要知道的是,当字符串由第三方机制提供时, convert_uudecode会出错

Warning: convert_uudecode(): The given parameter is not a valid uuencoded string

而手动输入则返回8AX9 | 3“。

我根本不是php专家,但这让我想到了一个角色问题。

关于如何做我的strpos的任何想法?

1 个答案:

答案 0 :(得分:0)

首先,我看到有一个括号“(”太多了。(你有3个开口“(”,和2关闭“))。 其次,如果你希望你的变量$ ok为真,如果他找到“?”标志,然后你应该测试!==

$ok = strpos($url, '?') !== false;
如果引号“?”,

$ ok现在会成立找到了。