PHP命名空间中define和const的区别
比如在a.php用define定义一个常量，在b.php中声明一个命名空间 && 引入a.php
此时在b.php中无法再次定义同名的常量，然而用const却可以，求解，谢谢诸位
```
a.php代码：
define('ROOT','123');

b.php代码：
namespace web360;
require 'c.php';
define('ROOT','123');
```
此时会报错（常量已经定义）
而如果用const定义的话，则不会出现此问题
这是因为 define 不会考虑命名空间，而 const 会。
简单的说，使用 define 定义时，不会考虑当前的命名空间，所以你两次定义的常量名称重复，会报重复定义。
而使用 const 定义时，会带上命名空间，你两次定义的常量实际是 `ROOT` 和 `web360\ROOT` 。名称不重复，不会报重复定义的错误。