php中g(shù)et_cfg_var()和ini_get()的用法及區(qū)別
本文實(shí)例講述了php中g(shù)et_cfg_var()和ini_get()的用法及區(qū)別。分享給大家供大家參考。具體分析如下:
php里get_cfg_var()和ini_get()都是取得配置值的函數(shù),當(dāng)你需要獲取php.ini里的某個(gè)選項(xiàng)的配置值時(shí),這兩個(gè)函數(shù)都都可以使用,得到的結(jié)果是一樣的。
不過,get_cfg_var()和ini_get()也有一些區(qū)別,這便是本文要談的內(nèi)容。
在說這兩個(gè)函數(shù)區(qū)別之前,我們先來了解一下它們的含義及用法。
有關(guān)ini_get()的用法,前面有一篇《php用ini_get獲取php.ini里變量值的方法》,這里不再累贅。
下面主要說說get_cfg_var()函數(shù)。
get_cfg_var: 取得PHP的配置選項(xiàng)值。
語法: string get_cfg_var(string varname);
返回值: 字符串
內(nèi)容說明: 若正確取得目前 PHP 配置選項(xiàng) varname,則返回變量值。失敗則返回 false。
下面說說這兩個(gè)函數(shù)的區(qū)別
其實(shí),這兩個(gè)函數(shù)的區(qū)別是很鮮明,并且易懂易學(xué)易用。
get_cfg_var(): 取的值是配置文件中的值
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//在我機(jī)器上什么也沒有 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ù),這個(gè)函數(shù)與ini_get()不同,ini_get_all()函數(shù)是以數(shù)組的形式返回整個(gè)php的環(huán)境變量,不過它的用法也很簡單。
ini_get_all()會(huì)把所有選項(xiàng)值以數(shù)組的形式返回,方便你當(dāng)phpinfo()無法使用的時(shí)候來使用。
例子:
<?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 ) … )
希望本文所述對大家的php程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP載入圖像imagecreatefrom_gif_jpeg_png系列函數(shù)用法分析
這篇文章主要介紹了PHP載入圖像imagecreatefrom_gif_jpeg_png系列函數(shù)用法,結(jié)合實(shí)例形式分析了php的圖像載入函數(shù)imagecreatefromgif、imagecreatefromjpeg、imagecreatefrompng、imagecreatefromwbmp及imagecreatefromstring使用技巧,需要的朋友可以參考下2016-11-11php類自動(dòng)加載失敗的處理方案及實(shí)例代碼
在本篇文章里小編給大家整理了一篇關(guān)于php類自動(dòng)加載失敗的處理方案及實(shí)例代碼,有興趣的朋友們可以學(xué)習(xí)參考下。2021-09-09php進(jìn)程(線程)通信基礎(chǔ)之System V共享內(nèi)存簡單實(shí)例分析
這篇文章主要介紹了php進(jìn)程(線程)通信基礎(chǔ)之System V共享內(nèi)存,結(jié)合簡單實(shí)例形式分析了PHP System V共享內(nèi)存原理、相關(guān)函數(shù)與基本使用技巧,需要的朋友可以參考下2019-11-11php+js實(shí)現(xiàn)點(diǎn)贊功能的示例詳解
這篇文章主要介紹了php+js實(shí)現(xiàn)點(diǎn)贊功能的示例詳解,文章通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08簡單說說PHP優(yōu)化那些事(經(jīng)驗(yàn)分享)
下面我想講講我對PHP優(yōu)化的理解。優(yōu)化的目的是花最少的代價(jià)換來最快的運(yùn)行速度與最容易維護(hù)的代碼2014-11-11PHP實(shí)現(xiàn)將多個(gè)文件中的內(nèi)容合并為新文件的方法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)將多個(gè)文件中的內(nèi)容合并為新文件的方法,涉及php編碼轉(zhuǎn)換、文件與目錄的遍歷以及文件讀寫相關(guān)操作技巧,需要的朋友可以參考下2017-06-06PHP 使用openssl 擴(kuò)展實(shí)現(xiàn)公鑰加密的方法
下面小編就為大家分享一篇PHP 使用openssl 擴(kuò)展實(shí)現(xiàn)公鑰加密的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03