细说ini_set()

本文转载自 http://blog.csdn.net/littlebo01/article/details/45199161

注意啦,这里是PHP的世界,请注意前提条件,你说这个不重要,什么你说这是废话?罚你通读php在线手册3天...

 

          印象中在脚本中修改配置,顺手拈来:

          @代码一

    ini_set('memory_limit','1024M');  

           还记得最好放在文件最前面,于是,


  @代码二

    echo ini_get('memory_limit');  
    ini_set('memory_limit','1024M');  
    echo ini_get('memory_limit');  
    exit;  


结果都是128M;难道没有权限?难道没有放在文件最前面?难道就是不能修改?

测试代码一能修改!!!


干货来了1:

            看手册:

可修改范围是PHP_INI_PERDIR,你可能不知道这是什么意思(参考:http://blog.csdn.NET/bravezhe/article/details/18351975)

PHP总共有4个配置指令作用域:(PHP中的每个指令都有自己的作用域,指令只能在其作用域中修改,不是任何地方都能修改配置指令的)

PHP_INI_PERDIR:指令可以在php.ini、httpd.conf或.htaccess文件中修改

PHP_INI_SYSTEM:指令可以在php.ini 和 httpd.conf 文件中修改

PHP_INI_USER:指令可以在用户脚本中修改

PHP_INI_ALL:指令可以在任何地方修改


干货来了2:

     开启了安全模式:代码一同样是无效的。

     自己在php version = '5.3.3'上测试发现ini_set('safe_mode',true);无效

     需要在php.ini下修改:

  


干货来了3:

        修改代码二的方法:

        在.htaccess文件中直接加上

    php_value upload_max_filesize "3M"  

        朋友的机器上可以,自己的无效,待研究。

       或者修改httpd.conf文件,具体如何修改该研究。


测试用例:

<?php  
// test ini_set()  
error_reporting(E_ALL ^ E_NOTICE);  
date_default_timezone_set("PRC");  
  
echo 'start...:'.date('Y-m-d H:i:s')."\n";  
echo 'safe_mode=';var_dump(ini_get('safe_mode'));  
if(!ini_get('safe_mode'))  
{  
    echo "不是安全模式\n";  
  
    echo "默认memory_limit=".ini_get('memory_limit')."\n";  
    ini_set('memory_limit','1023M');  
    echo "修改后memory_limit=".ini_get('memory_limit')."\n";  
    echo "\n****************************\n";  
  
    echo "默认upload_max_filesize=".ini_get('upload_max_filesize')."\n";  
    ini_set('upload_max_filesize','8M');  
    echo "修改后upload_max_filesize=".ini_get('upload_max_filesize')."\n";  
    echo "\n".'end...:'.date('Y-m-d H:i:s')."\n";  
  
}  
else  
{  
    echo "安全模式\n";  
  
    echo "默认memory_limit=".ini_get('memory_limit')."\n";  
    ini_set('memory_limit','1023M');  
    echo "修改后memory_limit=".ini_get('memory_limit')."\n";  
    echo 'end';  
  
    echo "默认upload_max_filesize=".ini_get('upload_max_filesize')."\n";  
    ini_set('upload_max_filesize','8M');  
    echo "修改后upload_max_filesize=".ini_get('upload_max_filesize')."\n";  
    echo 'end';  
}  
  
  
?>  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值