在一次写php脚本时,include了一个文件但是没有注意到变量重名了,导致出错。现在总结复盘一下。
如果在a.php里写了$ip='127.0.0.1';,然后再在b.php include了,但是在b中依然使用了$ip。当你不记得a中也使用了ip这个变量,这时$ip的值就不一定是你想要的了。
后面我在a脚本结束时将用到的变量都unset了,解决了问题。
其他方式
call_user_func(function() use($callback, $ip){
return $callback($ip);
})
写代码时注意:
1. 使用函数参数传递变量
2. 使用局部变量
3. 使用命名空间
4. 避免使用全局变量
5. 善用常量