今天测试了一下array_search()函数的弱类型,发现了一点东西,就是在url中如何传输数组(多个值);
以前只是知道,在变量后面加[]就是传递数组,后面如果想传递给数组多个值时就不知道了,然后发现了其实这样弄http://www.5555.com?a[]=0&a[]=1
这样就可以了,但是传递过去后两个值默认为字符串,今天试一下array_serach()的弱类型才发现的
以下是测试:
如图,我们先构造一个数组,包含1和0,在使用array_search()函数去找到字符串对应的键值(你也许会发现没有包含admin和1admin啊,不要着急,接下来就是弱类型)
效果如图:
发现竟然真的会返回键值,这就又是php弱类型的锅了,‘admin’==0 ‘1admin’==1
在比较中会将类型改变。
然后试试传数组试试:
发现并没有找到,为什么?仔细看看var_dump()后的$a,是不是发现传进去的都被解释为字符串?没错,0 和1 ,以及 admin和1admin都是字符串,因此就不会发生类型转换。。。
以上均为猜测,如有误恳请指点!