当我执行strpos时,PHP认为null是0
当$position中的字符不存在时,PHP认为null为0 $statusentery=$\发布[状态];当我执行strpos时,PHP认为null是0,php,Php,当$position中的字符不存在时,PHP认为null为0 $statusentery=$\发布[状态]; $position=strpos$statusentry,,它执行了if循环?因为0在PHP中可能意味着false,$position在不存在时将为false。因此,您需要使用以下各项: if ($position === 0){ 在PHP中使用三等号验证比较的值是否具有相同的数据类型。在这里可以找到更多信息:因为0在PHP中可能意味着false,$position在不存在时将是fal
$position=strpos$statusentry,,它执行了if循环?因为0在PHP中可能意味着false,$position在不存在时将为false。因此,您需要使用以下各项:
if ($position === 0){
在PHP中使用三等号验证比较的值是否具有相同的数据类型。在这里可以找到更多信息:因为0在PHP中可能意味着false,$position在不存在时将是false。因此,您需要使用以下各项:
if ($position === 0){
在PHP中使用三等号验证比较的值是否具有相同的数据类型。更多信息可以在这里找到:来自:
警告
因为strpos可能返回不存在的假子字符串或0子字符串
在字符串的开头,必须使用严格等效运算符和松散等效运算符
使用非常小心
要知道缺少子字符串,必须使用:
==错误
要知道子字符串存在于包括0在内的任何位置,需要
可以使用以下任一选项:
!==错误推荐
-1注:或大于任何负数
要知道子字符串位于字符串的开头,必须使用:
==0
要知道子字符串位于起始位置以外的任何位置,可以
可以使用以下任何一种:
建议使用0!=0注意:但不是!==0也等于FALSE!=虚假的不名誉被认为是高度混乱的
还请注意,无法将的值与返回的值进行比较
关于strpos。使用松散等效运算符==或!=它会回来的
不区分子字符串是否存在的结果
对位置。使用严格等价运算符===或!==信息技术
将始终返回false
因此,代码必须是:
$statusentery = $_POST[status];
$position = strpos($statusentery,"<");
if ($position === 0){
echo "Sorry, for security purposes we do not allow characters such as <";
exit;
}
发件人:
警告
因为strpos可能返回不存在的假子字符串或0子字符串
在字符串的开头,必须使用严格等效运算符和松散等效运算符
使用非常小心
要知道缺少子字符串,必须使用:
==错误
要知道子字符串存在于包括0在内的任何位置,需要
可以使用以下任一选项:
!==错误推荐
-1注:或大于任何负数
要知道子字符串位于字符串的开头,必须使用:
==0
要知道子字符串位于起始位置以外的任何位置,可以
可以使用以下任何一种:
建议使用0!=0注意:但不是!==0也等于FALSE!=虚假的不名誉被认为是高度混乱的
还请注意,无法将的值与返回的值进行比较
关于strpos。使用松散等效运算符==或!=它会回来的
不区分子字符串是否存在的结果
对位置。使用严格等价运算符===或!==信息技术
将始终返回false
因此,代码必须是:
$statusentery = $_POST[status];
$position = strpos($statusentery,"<");
if ($position === 0){
echo "Sorry, for security purposes we do not allow characters such as <";
exit;
}
警告:此函数可能返回布尔值FALSE,但也可能返回计算结果为FALSE的非布尔值。有关更多信息,请阅读布尔值部分。使用===运算符测试此函数的返回值。警告:此函数可能返回布尔值FALSE,但也可能返回计算结果为FALSE的非布尔值。有关更多信息,请阅读布尔值部分。使用===运算符测试此函数的返回值。