(1).在PHP中可以查看的环境变量包括:
(1.1).电脑环境变量
(2.1).服务器环境变量
(2).getenv()函数获取一个环境变量的值.参数1是环境变量的key,参数2值为true的时候仅从你的电脑环境变量中查找,参数2值为false会从两种变量中全部查询
//获取我电脑登录的用户名,输出Administrator
$username = getenv('USERNAME');
var_dump($username);(3).putenv()函数设置环境变量的值,设置后新增到服务器环境变量
//设置环境变量PHPUSERNAME的值为gaojiufeng
putenv('PHPUSERNAME=gaojiufeng');(4).为什么不用$_ENV['环境变量']数组形式来获取变量值?
默认php.ini没有开启环境变量,打印$_ENV是个空数组.官方对于默认不开启环境变量的说法是由于开启$_ENV,会导致一些性能损失.生产环境是不建议使用.更推荐使用getenv()函数来获取环境的值.如果非要开启环境变量,在php.ini中设置如下:
variables_order = "EGPCS"
(5).$_SERVER和$_ENV的区别
$_SERVER包含的是服务器环境变量,
$_ENV同时包含服务器环境变量和电脑环境变量
<!doctype html> <html> <head> <meta charset="utf-8"> <title>demo</title> </head> <bod...
面试中PHP面试官会问调用一个不存在的方法,如何知道是哪个文件哪行调用的?假设方法是getWorkLoad()回答1:开启PHP错误输出,PHP会输出Fatal error: Call to undefined function getWorkLoad() in D:\wwwroot\thinkpa...
ThinkPHP中有一个debug调试功能,能输出报错文件的信息,并能看到这个函数被哪些函数调用,从框架的启动开始记录,特别方便调试。于是研究了下它的底层给予了实现。<?php //--框架核心--Start //框架内置错误处理 function errDealWith($er...
断点下载的原理:http请求头添加Range参数告诉文件服务器端需要的字节范围例如1个文本文件的字节为1000,第一次请求Range: bytes=0-500第二次请求Range: bytes=501-1000通过每次的请求将返回的流追加写入到文件。注意的项目:断点下载服务器端的每次只返回字节传输的...
最近在项目中处理一个关于商品数据重复需要删除多余的商品记录,但是删除一条商品必然要把关联的其他表商品的id和其他商品信息更换为正确的,删除一个商品记录,同时要去修改100多张表的关联商品数据,在项目中引用了tp orm 1.2版本,由于项目是php5.6版本,没法使用最新orm,在代码中每处理1个商...
本教程使用的定时任务基于EasyTak,EasyTask官方文档:https://gitee.com/392223903/EasyTask由于tp3.2.x官方开发未考虑命令行支持和绝对路径开发的标准,因此我编写了一个支持的类来运行。1.在tp3.2.3根目录下安装easytaskcomposer&...