這篇文章主要介紹了php中get_cfg_var()和ini_get()的用法及區別,實例分析了get_cfg_var()和ini_get()函數的區別與使用技巧,需要的朋友可以參考下
本文實例講述了php中get_cfg_var()和ini_get()的用法及區別。分享給大家供大家參考。具體分析如下:
php里get_cfg_var()和ini_get()都是取得配置值的函數,當你需要獲取php.ini里的某個選項的配置值時,這兩個函數都都可以使用,得到的結果是一樣的。
不過,get_cfg_var()和ini_get()也有一些區別,這便是本文要談的內容。
在說這兩個函數區別之前,我們先來了解一下它們的含義及用法。
有關ini_get()的用法,前面有一篇《php用ini_get獲取php.ini里變量值的方法》,這里不再累贅。
下面主要說說get_cfg_var()函數。
get_cfg_var: 取得PHP的配置選項值。
語法: string get_cfg_var(string varname);
返回值: 字符串
內容說明: 若正確取得目前 PHP 配置選項 varname,則返回變量值。失敗則返回 false。
下面說說這兩個函數的區別
其實,這兩個函數的區別是很鮮明,并且易懂易學易用。
get_cfg_var(): 取的值是配置文件中的值
ini_get(): 則取的當前值
比如
ini_set('SMTP', '192.160.0.24'); // 改變 SMTP 的當前值
print get_cfg_var('SMTP'); // 返回 localhost
print ini_get('SMTP'); // 返回 192.160.0.24
- <?php
- /*
- Our php.ini contains the following settings:
- display_errors = On
- register_globals = Off
- post_max_size = 8M
- */
- echo 'display_errors = ' . ini_get('display_errors') . "/n";
- echo 'register_globals = ' . ini_get('register_globals') . "/n";
- echo 'post_max_size = ' . ini_get('post_max_size') . "/n";
- //POST提交內容限制:
- echo 'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "/n";
- echo 'allow_url_fopen = ' . (ini_get('allow_url_fopen')) . "/n";
- //使用URL打開文件:
- ?>
輸出:
display_errors = 1
register_globals = 0//在我機器上什么也沒有
post_max_size = 8M
post_max_size+1 = 9
allow_url_fopen = 1
- <?php
- /*
- Our php.ini contains the following settings:
- display_errors = On
- register_globals = Off
- post_max_size = 8M
- */
- echo 'display_errors = ' . get_cfg_var('display_errors') . "/n";
- echo 'register_globals = ' . get_cfg_var('register_globals') . "/n";
- echo 'post_max_size = ' . get_cfg_var('post_max_size') . "/n";
- //POST提交內容限制:
- echo 'post_max_size+1 = ' . (get_cfg_var('post_max_size')+1) . "/n";
- echo 'allow_url_fopen = ' . (get_cfg_var('allow_url_fopen')) . "/n";
- //使用URL打開文件:
- ?>
輸出:
display_errors = 1
register_globals =
post_max_size = 8M
post_max_size+1 = 9
allow_url_fopen = 1
另外,這里提一提ini_get_all()函數,這個函數與ini_get()不同,ini_get_all()函數是以數組的形式返回整個php的環境變量,不過它的用法也很簡單。
ini_get_all()會把所有選項值以數組的形式返回,方便你當phpinfo()無法使用的時候來使用。
例子:
- <?php
- $inis = ini_get_all();
- print_r($inis);
- ?>
輸出:
- Array (
- [allow_call_time_pass_reference] => Array
- (
- [global_value] => 1
- [local_value] => 1
- [access] => 6
- )
- [allow_url_fopen] => Array
- (
- [global_value] => 1
- [local_value] => 1
- [access] => 7
- )
- …
- )
新聞熱點
疑難解答