Home > Backend Development > PHP Tutorial > 变量 $_SERVER、$_ENV 和 define 定义系统参数的疑惑

变量 $_SERVER、$_ENV 和 define 定义系统参数的疑惑

WBOY
Release: 2016-06-06 20:33:17
Original
1545 people have browsed it

看了一些框架,很多在系统核心入口处通过 define 定义很多系统参数,但是最近看到一些是定义在 $_SERVER 中,甚至还有定义在 $_ENV 中的。

虽然都能实现功能,但是一直很疑惑,这样定义有什么优点吗?还是说可以略微提升性能?求解答~

回复内容:

看了一些框架,很多在系统核心入口处通过 define 定义很多系统参数,但是最近看到一些是定义在 $_SERVER 中,甚至还有定义在 $_ENV 中的。

虽然都能实现功能,但是一直很疑惑,这样定义有什么优点吗?还是说可以略微提升性能?求解答~

在.htaccess中加入下面代码

<code>SetEnv database_name your_database
SetEnv mysql_user your_username
SetEnv mysql_password your_password
</code>
Copy after login

这时你可以在php中使用$_SERVER['database_name'],$_SERVER['mysql_user'],$_SERVER['mysql_password']来访问这些值。

说白了就是$_SERVER这个全局数组可以通过apache来新增一些键值;而常量不行,只能在php文件里用define定义。

很少看到直接把变量放在$_SERVER,$_ENV里面的 ,因为这两个变量都是语义化的变量。
另外常量本身就有很高的性能,所以这里应该不是基于性能考虑,也许仅仅是一种不好的个人爱好。

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template