昨天出去学习
跟一个PHP开发者,挣了半天
判断一个数组中是否有设置过这个KEY的场景
对方坚持用array_key_exists() ,说isset只判断value,不判断key,在这个场景下会出错
我说没错,array_key_exists会检查键值的存在. 这个函数会返回TRUE,只要键值存在,即使值为NULL
但isset() 我们用的比较多,并且我感觉运用场景会比较多,因为它会同时检查键和值
对方一直坚持只会检查value,不检查KEY,有问题
我又重复说了近三次,你可以有时间试下,当数据没有KEY的时候报Undefined index的时候,你用isset,还报错不
挣了很久,,,甚至对方抱了粗口,来了一句操
额,其实我感觉同行之间技术的交流很正常
https://www.imooc.com/video/4176 这里是幕课网对array_key_exists和isset性能的对比
对方说,如果值为NUll的时候才会返回什么
我说了一句flase,其实值是否为NULL的时候,我们都用 is_null了
昨天技术交流了2个半小时,前1个小时就问了差不多2个问题
可能他的问题都是开放式的,,,
争议比较多,其实在不同的业务场景下,没有哪个函数是最优的,比如对方说合并数组的说法,有30-50个参数数组a,重新从a变成b 赋值,再来合并,没说不可以,但这种方式,开销上可能没考虑过,为什么没从一个数组中去处理,会foreach的方式去把KEY的对应关系处理好呢
最后的时段,我的脑子一直哄哄的,,,嗓子已经完成亚了,说话可以这么理解,完全靠喊了
直接去医院~
现在这个时间我嗓子还是靠喊,早上开早会,领导听到我的声音,都震惊了,,,
我也很震惊,现在说话靠练习,因为怕说出来,别人听不见,或者听不懂~~~