,是会将两个变量都转换为相同类型,不同变量的无法对比 当字符串和int类型对比时,将会把字符串转化为int类型,相当于字符串在底层执行了一次intval()函数....至于为什么数字放前面就能intval,放后面就不行,是因为: 该字符串的开始部分决定了它的值,如果该字符串以合法的数值开始,则使用该数值,否则其值为0。 怪不得有些网站注册时非要名字以字符串开头…....type"; break; default: die(); } mysql_query($sql);
延伸: 如果字符串和数字比较会出现类型转换的问题...,那么一些php自带函数会不会出现相同的问题?..., 真的认为完全不合逻辑,就暂时一笔带过
总结 一定要做好参数的过滤,在使用他之前 应该常用 “===” 来判断,而不是”==” 应该了解每一个常用函数的参数和返回值,尽量采用严格模式