利用ini_set()函数实现对php配置文件的修改
PHP的配置文件是php.ini,如果要开启或者关闭扩展,还有设置一些模块的相关配置是,就得对该文件进行修改, 修改的方法也很简单,打开php.ini找到对应项直接修改,修改之后需要重新启动才能生效。
但是,这里有一个问题,一旦改变某一项,就会作用到所有的项目上,如果项目A需要一个功能开启,而另外一个项目B必须让这个功能关闭,甚至一个项目对一个功能的要求在不同的情况下是不同的,那么,此时就得在运行一个项目之前,对该功能进行设置关闭或打开。
此处只列举两个例子,比如错误报告设置,还有时区设置等
有的项目的某一个页面要求不报告任何错误,某一页面只报告E_ERROR,可以通过三种方式
第一种方式
直接修改php.ini修改errorreeporting的默认值E_ALL
不报告任何错误改为 error_reporting=0
只报告E_ERROR 改为error_reporting=E_ERROR
第二种方式
使用函数error_reporting("value");
需要报告什么错误就将value改为其对应的值,可以多个值同时出现,用 | & ~指明关系
第三种方式
使用函数ini_set("item","value");
比如只报告E_ERROR就可以用ini_set("error_reporting","E_ERROR");
对于时区设置也同样可采用上面的三种方法
第一种方式
直接修改php.ini修改date.timezone的默认值
默认的是以格林威治时间(从1970-1-1 00:00:00 开始,没取一次时间戳,并不是适配中国的时区 8区,所以显示的时间都比所处的时间少8个小时,应该修改时区)
设置为中国的时区可改变其值 date.timezone=Asia/Shanghai 或者date.timezone=PRC
第二种方式
使用函数date_default_timezone_set(" Asia/Shanghai ");或者date_default_timezone_set("PRC")
第三种方式
使用函数ini_set("item","value");
就可以用ini_set("date.timezone","PRC");
与ini_set()函数配对的还有ini_get()函数,就是获得对应配置项的值
其实说了这么多,就是想说对配置文件进行修改的时候尽量使用ini_set()函数,使用这个函数后,作用区域只局限于当前脚本文件,当脚本执行完后,又恢复默认值。
利用ini_set()函数实现对php配置文件的修改的更多相关文章
- 实现对Java配置文件Properties的读取、写入与更新操作
/** * 实现对Java配置文件Properties的读取.写入与更新操作 */ package test; import java.io.BufferedInputStream; import j ...
- 利用SMB jcifs实现对windows中的共享文件夹的操作
需求是在本地上传文件到服务器上,服务器是windows的,使用共享文件夹提供权限给你的. 利用第三方: CIFS (Common Internet File System) SMB(Server Me ...
- Android 利用xUtils框架实现对sqllite的增删改查
首先下载xUtils,下载地址:https://github.com/wyouflf/xUtils 把下载好的文件压缩,把里面的jar包拷进项目中如图所示: 这里新建一个User类进行测试增删改查 ...
- 利用shell脚本实现对mysql数据库的备份
#!/bin/bash #保存备份个数 number=3 #备份保存路径 backup_dir=/root/mysqlbackup #日期 dd=`date +%Y%m%d` #备份工具 tool=m ...
- 利用COM组件实现对WORD书签处写入值
using System; using System.Collections.Generic; using System.Text; using Microsoft.Office.Interop.Wo ...
- 利用COM组件实现对WORD书签各种操作大全,看这一篇就够了
有个需求是,程序导出一份word报告,报告中有各种各样的表格,导出时还需要插入图片. 脑海中迅速闪过好几种组件,openxml组件,com组件,npoi.为了减少程序画复杂表格,我们选用了com组件+ ...
- Xamarin.Android 入门实例(4)之实现对 SQLLite 进行添加/修改/删除/查询操作
1.Main.axml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns: ...
- python实现对excel数据进行修改/添加
import osimport xlrdfrom xlutils.copy import copydef base_dir(filename=None): return os.path.join(os ...
- 使用JWT来实现对API的授权访问
目录 什么是JWT JWT的结构 Header Payload Signature 解码后的JWT JWT是怎样工作的 在JAVA里使用JWT 引入依赖 JWT Service 生成JWT 解码JWT ...
随机推荐
- 3D数学读书笔记——矩阵基础
本系列文章由birdlove1987编写,转载请注明出处. 文章链接:http://blog.csdn.net/zhurui_idea/article/details/24975031 矩 ...
- hashCode相关性能优化
学习下hashMap中用到的关于hashCode性能优化技巧.作为笔记.为之后并发深入作基础. 1.关于提高性能的hash算法 在被模的位数为2的n次方时,用位与取代效率低下的模运算.位与效率相比模运 ...
- map && multimap
map map 的意思是映射.用法一般是 map<char, int>mp 按照我的理解,map 类似于一个高级的数组.前面的数据类型 char 相当于下脚标,而数组元素的值就对应 ...
- smartpass
1.smartpass 是用户注册后,产生的用户名密码 与每个摄像头的用户名密码不一致 2.每个设备初始化登录密码为admin admin,如果需要修改,则在进入该设备IP地址,设置——>用户管 ...
- jvm内存模型中-栈,方法区,程序计数器是线程安全的
文章转自 https://www.cnblogs.com/myna/p/7567889.html 引文 JDK7及之前版本的方法区(Method Area)和Java堆一样,是各个线程共享的内存区域 ...
- ansible详解
Ansible默认通过 SSH 协议管理机器. 安装Ansible之后不需要启动或运行一个后台进程,或是添加一个数据库.只要在一台电脑(可以是一台笔记本)上安装好,就可以通过这台电脑管理一组远程的机器 ...
- C语言的基本数据类型
代码如下: // text.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" int main() { int a; //告诉编译器,分配 4 ...
- java 学习------helloword 程序测试
1.新建一个helloword.java 文件 2.在新建的helloword.java 文件中添加以下代码 class helloWord { public static void main(St ...
- node 文件操作
对文件的各种操作,使用姿势如下 文件操作单例 @example fu.exist(file); //是否存在 fu.copy(file, 'new-path'); //复制到某个新目录 fu.move ...
- 【转】Raft 为什么是更易理解的分布式一致性算法
编者按:这是看过的Raft算法博客中比较通俗的一篇了,讲解问题的角度比较新奇,图文并茂,值得一看.原文链接:Raft 为什么是更易理解的分布式一致性算法 一致性问题可以算是分布式领域的一个圣殿级问题了 ...