2018年(273)
分类: IT职场
2018-08-06 14:21:39
、问题一关于弱类型
$str1 = 'yabadabadoo';
$str2 = 'yaba'; if (strpos($str1,$str2)) {
echo "\\"" . $str1 . "\\" contains \\"" . $str2 . "\\"";
} else {
echo "\\"" . $str1 . "\\" does not contain \\"" . $str2 . "\\"";
}
正确运行的输出结果:
"yabadabadoo" does not contain "yaba"
strpos是返回字符串str2在str1的位置,没有找到则返回false然而实际上这次返回了0而在if语句中0也被当作false,所以,我们需要对false做类型判断,正确的代码如下:
$str1 = 'yabadabadoo';
$str2 = 'yaba'; if (strpos($str1,$str2) !== false) {
echo "\\"" . $str1 . "\\" contains \\"" . $str2 . "\\"";
} else {
echo "\\"" . $str1 . "\\" does not contain \\"" . $str2 . "\\"";
}
需要注意的是我们使用了!==,在php 和 JS中= !相对== 更为严格需要要求数据类型的一致。
2、下面的输出结果会是怎样?