PHP配置文件
php.ini --全局配置文件,都是默认信息
可以是php.ini 也可以是php.版本号.ini
user.ini --用户级别的配置文件
php的配置有不同的配置权限,不同的权限在不同的配置文件是不一样的,具体的配置权限可以查阅相关文档。
php 配置 – 语法
指令名 = 值
指令名大小写敏感,值可以是字符串、数字、php常量、ini常量、表达式
常见重要配置 -变量相关
全局变量 register_globals = off 默认是关闭的
可以将键值直接注册为变量
因为有严重的安全问题,在新版本中已经移除。
安全模式在新的版本中也被移除了,默认关闭。
需要重点关注一下 :禁用类/函数
禁用类函数:disable_classes =,disable_functions =,disable_functions
常见的重要配置-上传文件及目录权限
file_uploads = on 默认是打开的
定义了上传文件的大小之后,超过定义大小的文件就不会上传成功。
临时目录 不设置默认为空的话就采用系统临时目录 Linux是 /tmp Windows是 C:\Windows\Temp
用户访问目录限制:限制能访问的目录,一般是限制在网站的根目录,用 . 来代替。可以访问临时目录
Linux用 : 作为不同目录的分割符号
Windows用 ; 作为不同目录的分割符号
错误信息
这个需要打开,不然调试的时候没法继续,错误报告级别也应该调到最高
在调试的时候在入口文件就把错误信息打开。
魔术引号及远程文件
魔术引号在新版本中已经被废弃了。默认打开
远程文件和包含文件有关,默认打开
包含远程文件,默认关闭
常见的危险函数(一)
php 可以把变量作为函数名执行
代码执行函数 -eval & assert & preg_replace
eval() :把字符串作为php代码执行
assert() :断言,是一个调试函数,也可以把字符串作为代码执行
preg_replace() :执行正则表达式进行搜索和替换
string creat_function() :创建匿名函数,可以把字符串的内容作为函数去执行
call_user_func() :回调函数,多参数形式
call_user_func_array() :回调函数,数组形式
包含函数
include 文件名/文件路径
命令执行函数
调用外部函数或用shell执行命令
文件操作函数
文件操作函数还有很多很多
特殊函数
数组相关:判断变量是否存在在数组里面,在比较之前会自动类型转换,当把strict设置为true则不会自动转换
比较之前会先自动转换类型
设置为true则不会自动转换