PHP 如果条件与 OR 运算符不起作用



我正在尝试检查脚本命中时网址是win还是scholartips

<?php if (!strpos($_SERVER['REQUEST_URI'], 'win') || !strpos($_SERVER['REQUEST_URI'], 'scholartips') ): ?>
 conditional script here
<?php endif; ?>

但是每当我点击带有example.com/win/example.com/scholartips/的 url 时,条件脚本仍在加载中。我的病情出了什么问题?如果我删除其中一个条件,代码可以工作,但我想针对 2 个 url 路径。谢谢。

您想要使用 AND 运算符。 example.com/win 不包含学术提示,并且由于 OR 运算符,整个子句的计算结果为 TRUE。所以切换 ||到 &&。

你应该使用 && 运算符,而不是 or 运算符。

无论您访问/win/还是/scholarship/,其中一个 strpos 检查将始终评估为 true。

最新更新