此问题已在此处有答案:
String contains any items in an array (case insensitive)(15个回答)
6天前关闭。
你好
我有这个代码:
if ( strpos( $_GET[ 'y' ], array( '/', '.', '\\', '%', '#', ';' ) ) === false
它在php5上工作得很好,但现在在php 8上我得到这个错误:
strpos(): Argument #2 ($needle) must be of type string, array given
我必须完全摆脱这条线吗?或者有其他解决方案吗?
谢谢大家。
1条答案
按热度按时间mf98qq941#
如果您阅读了文档https://www.php.net/manual/en/function.strpos.php,您可以看到两个参数都需要是字符串(正如错误实际告诉您的那样)。
如果你想搜索多个字符串,要么使用正则表达式
或者在网上搜索有多针的strpos。它甚至在堆栈溢出strpos() with multiple needles?或Using 2 or more needles when using strpos中得到了回答
希望这有帮助;)