这篇文章将为大家详细讲解有关如何解析PHP及配置文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
PHP是Hypertext Preprocessor超文本预处理器的缩写,是一种广泛使用的服务器端编程语言,用于开发动态网页,是目前动态网页开发中使用最为广泛的语言之一。
简单的说,PHP是一种Web服务器端开发语言,用于快速进行动态网页开发。
其特点包括:
(1)开源、跨平台、独立于架构;
(2)解释型、面向对象、数据库支持;
(3)快速、简单易学、健壮、安全、性能优越。
类似的开发语言有ASP、JSP。
PHP与ASP、JSP语言以其优异的性能、强大的数据库操作功能迅速成为主流的Web服务器端开发语言。
PHP+Apache+MySQL的组合(三者都是开源的)是一个完全免费、性能优异的Web服务器应用开发组合,已成为绝大多数中小型网站的应用解决方案。
早期的Web应用服务器端程序是用Perl或C语言直接编写CGI(common Gateway Interface,公共网关接口)程序,或者利用Web服务器自带的API,或者采用第三方解决方案,这些方法均有各自的强项,但在运行速度、数据库操作方面均不能满足Web应用不断增长的需求。
PHP主要用于以下3个应用领域:
(1)服务器端脚本程序
(2)命令行脚本程序
(3)桌面应用程序
使用PHP编写服务器端脚本程序是PHP 最常用的应用领域。
(下图来自网络)
Web服务器:一般选择开源的Apache或Nginx
数据库:一般选择开源的MySQL
PHP解释器:PHP软件包
常见的是部署在Linux和Windows平台。
有对应的集成安装包,如Windows平台的WAMP,Linux平台的LAMP、LNMP。
对于作为Web服务器模块版本的PHP,仅在Web服务器启动时读取一次。
Windows环境下php.ini的搜索路径如下(按顺序):
(1)Apache配置文件httpd.conf中PHPIniDir指定的路径
(2)HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath (即Windows注册表位置)
(3)PHPRC环境变量
(4)Web服务器目录或者PHP所在目录(Windows下其它情况)
(5)Windows目录(c:\windows或c:\winnt)
可以通过info.php的输出页面中Loaded Configuration File项的值来判断服务器当前读取的PHP配置文件是哪一个。如下图所示:
extension_dir
PHP搜索扩展库的位置。PHP扩展库一般放在PHP目录下面的ext文件夹内,是一组.DLL动态链接库文件。
short_open_tag(Boolean)
决定是否允许使用PHP代码中开始标志的缩写形式()。
如果要和XML结合使用,可以禁用此选项以便于嵌入使用。
不禁用的话可以通过PHP来输出,例如:<!--?php echo '。
如果禁用了,必须使用PHP代码开始标志的完整形式()。
注意:此参数也会影响到缩写形式<!--?=,它和<? echo等价。使用此缩写需要short_open_tag的值为on。
memory_limit(integer)
这个参数设定了一个脚本所能够申请到的最大内存字节数。这有助于防止写得不好的脚本消耗光服务器上的可用内存。要使用此参数必须在编译的时候激活(如果是源码编译安装的话,即在configure一行中应该加上参数:--enable-memory-limit)。如果不需要任何内存上的限制,必须设置次参数值为-1。
自PHP4.3.2版起,当激活了memory_limit,PHP函数memory_get_usage()便可以使用了。当使用integer类型时,其值以字节为度量单位。
track_vars(boolean)
如果激活,则环境变量GET、POST、Cookie和Server都能够分别在全局关联数组中找到:
$_ENV、$_GET、$_POST、$_COOKIE和$_SERVER
注意:自PHP4.0.3版起,track_vars总是打开的。
arg_separator.output(string)
表示PHP所产生的URL中用来分隔参数的分隔符。
arg_separator.input(string)
表示PHP用来将URL解析为变量的分隔符列表(注意:这里的每个字符都会被当成分隔符!)
variables_order(string)
设定EGPCS(Environment、GET、POST、Cookie、Server)变量解析的顺序,默认设定为“EGPCS”。
如果设置为“GP”,会导致PHP完全忽略环境变量(ENV)、Cookie和Server变量,并用GET方法的变量覆盖POST方法的同名变量。
auto_globals_jit(boolean)
启用后,SERVER和ENV变量在它们第一次使用后便被创建,而不是等到脚本开始运行时。
如果这些变量没有在脚本中使用,启用这个参数会提高服务器性能。
注意:要使此选项有效,PHP配置选项register_globals、register_long_arrays和register_argc_argv必须禁用。
register_long_arrays(boolean)
设定PHP是否注册过时的$HTTP_*_VARS之类的预定义变量。
默认为on(启用),此时类似$HTTP_GET_VARS的PHP变量会被注册。
如果不使用,为性能考虑建议关闭此选项,而使用超全局数组例如$_GET替代。
此参数自PHP5.0.0版本起可用。
post_max_size(integer)
设定POST数据所允许的最大大小。字节为单位。
此设定也影响到文件上传。要上传大文件,此参数的值必须大于upload_max_filesize。
如果配置脚本中激活了内存限制memory_limit,也会影响文件上传。
通常memory_limit应该比post_max_size要大。
如果POST数据尺寸大于post_max_size,$_POST和$_FILES superglobals便会为空。
gpc_order(string)
设定GET/POST/COOKIE三个变量解析的顺序,默认为“GPC”。
如果设置为“GP”,会导致PHP完全忽略Cookie变量,并用GET方法的变量覆盖POST方法的同名变量。
注意:本选项不能用与PHP4中,可用variables_order替代之。
include_path(string)
指定一组目录用于require()、include()和fopen_with_path()函数来寻找文件。格式和系统的PATH环境变量类似:一族目录的列表。
注意:目录列表在Linux/Unix系统下用冒号:分隔,在Windows系统下用分号;分隔。
doc_root(string)
PHP在服务器上的根目录。仅在非空是使用。
如果PHP被配置为安全模式,则此目录之外的文件一概不解析。
如果PHP编译时没有指定FORCE_REDIRECT,并且在任何Web服务器(除了IIS)中以CGI方式运行PHP,则应该设定doc_root。另一种替代方案是使用cgi.force_redirect配置选项。
user_dir(string)
在用户目录之下使用PHP文件的基本目录名,例如public_html。
extension_dir(string)
PHP用来寻找动态链接扩展库的目录。
enable_dl(boolean)
此选项只有在PHP作为Apache模块方式运行的时候才是有用的。
设置为on时,可以在PHP脚本运行的过程中通过PHP內建函数dl()来动态加载PHP扩展库。
这个配置选项对安全性有一定的影响,所以在安全模式下,是不能使用dl()函数的。
extension(string)
当PHP启动时所加载的动态链接扩展库。
file_uploads(boolean)
是否允许HTTP文件上传。
upload_tmp_dir(string)
文件上传时存放文件的临时目录。必须是PHP进程所有者用户可写的目录。如果未指定则使用系统默认值。
upload_max_filesize(integer)
所上传文件的最大大小。字节为单位。
关于如何解析PHP及配置文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。