技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運營

贊助商

分類目錄

贊助商

最新文章

搜索

實例說明get_cfg_var()和ini_get()的用法及區(qū)別

作者:admin    時間:2012-10-24 17:4:40    瀏覽:

php里get_cfg_var()ini_get()都是取得配置值的函數(shù),當(dāng)你需要獲取php.ini里的某個選項的配置值時,這兩個函數(shù)都都可以使用,得到的結(jié)果是一樣的。

不過,get_cfg_var()和ini_get()也有一些區(qū)別,這便是本文要談的內(nèi)容。

在說這兩個函數(shù)區(qū)別之前,我們先來了解一下它們的含義及用法。

有關(guān)ini_get()的用法,我在昨天已經(jīng)寫過一篇日志《如何用ini_get獲取php.ini里的變量值》,這里不再累贅。

下面主要說說get_cfg_var()函數(shù)。

get_cfg_var
取得PHP的配置選項值。

語法: string get_cfg_var(string varname);

返回值: 字符串

內(nèi)容說明: 若正確取得目前 PHP 配置選項 varname,則返回變量值。失敗則返回 false。

下面說說這兩個函數(shù)的區(qū)別

其實,這兩個函數(shù)的區(qū)別是很鮮明,并且易懂易學(xué)易用。

get_var_cfg(): 取的值是配置文件中的值
ini_get():  則取的當(dāng)前值

比如

ini_set('SMTP', '192.160.0.24');   // 改變 SMTP 的當(dāng)前值
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提交內(nèi)容限制:
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提交內(nèi)容限制:
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()函數(shù),這個函數(shù)與ini_get()不同,ini_get_all()函數(shù)是以數(shù)組的形式返回整個php的環(huán)境變量,不過它的用法也很簡單。

ini_get_all()會把所有選項值以數(shù)組的形式返回,方便你當(dāng)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 


標簽: ini_get  get_cfg_var  
x
  • 站長推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */