精灵巫婆 发表于 2015-2-4 00:03:21

PHP教程之透析PHP的设置装备摆设文件php.ini

另外要叮嘱各位的是,抵御诱惑,ASP/PHP/JSP/.NET的对比也许会让你无所适从,你也许学了一半PHP,又开始打C#的主意,或者有人说JAVA很强,这个时候的你绝对不能动摇,哪怕你真想学。   

明天,咱们来侃侃PHP.INI文件中的一些风趣的内容吧。

  PHP.INI文件信任每位PHP喜好者都不会生疏,在PHP的上一个版本PHP3.0中它被定名为PHP3.INI。用NOTEPAD翻开它,文件凡是在操作体系的Windows目次下。人人都看到,PHP.INI文件外面有良多分号“”,和Windows体系一样,这些分号用来暗示注解,也就是说为了设置装备摆设文件明晰易懂,开辟者在分号前面对每一个设置装备摆设功效做了冗长申明,体系处置时会疏忽这些注解行。固然,别的一个优点是,当PHP体系设置装备摆设有变更的时分,咱们可以对某些行加上或去失落注解就好了,复杂又便利。

  auto_prepend_file string 可以指定一个文件主动地在读取一切php文件之前解析履行,可觉得PHP、ASP、HTML等任何文件(不外图象文件可不可),在特别时分却是很有效。好比你想在每一个PHP页面上增添一段告白,又假定你在开辟一个网站,想让一切会见者在读取任何PHP页面之行进行身份验证,你就能够把你的验证代码作成独自文件,然后在这里设置string为该文件名就行啦。仔细的读者要问了:假如我只是某些文件需求这些功效,可怎样办呀,开动头脑吧,举个例子:

  myprefix.php文件
  <?php
  if (strstr(strtoupper( PHP_SELF),"/PHPTEST/"))
  echo "我的告白!<BR>";
  ?>

  如许只需设置:auto_prepend_file=“myprefix.php”,那末一切phptest目次下的PHP文件就都包括你的告白头啦!还需求申明的是这个文件应当放在include_path所指的途径外面,否则能够会失足的,上面就会提到它。

  auto_append_file string 和下面功效相似,只是主动加在PHP文件末尾,并且PHP法式用exit()加入时就不论用了。有了这个功效,咱们可以轻而易举地添加公司地址的脚注了!

  include_path string 这个参数的感化是让include()、require()等函数在这里所界说的途径中查找文件,是否是有点象DOS时期里用的SET PATH号令?这个参数可以供应一个途径列表,不外在UNIX中途径间用冒号分隔,在NT顶用分号,并且斜杠的偏向也不不异。如:
UNIX例:include_path=.:/home/lib
NT 例:include_path=".:c:homeib" 个中“.”暗示以后目次。
gpc_order string

  GPC是GET/POST/COOKIE三种变量的第一个字母,它的按次表现体系处置三种变量的优先级别,从左到右,优先权顺次递增。默许设置为GPC,如许当有个中任两种或三种称号不异变量传递到办事器时,体系会按优先权排序,只读取优先权较高的变量。又好比设定成 “GP” 暗示无视 cookie,并在存取办法 (method) 不异时,以 POST 代替GET。固然,咱们在编程过程当中应该尽可能防止同时用分歧的体例传递称号不异的变量,不然法式的可读性会变坏,并且在设置装备摆设分歧的体系里能够会有分歧的输入了局。

  magic_quotes_gpc boolean 这个参数能肯定包括在GET/POST/COOKIE这三种变量中的特别字符:单引号、双引号、斜杠,是不是加本义字符反斜杠(就是C言语里经常使用的“”)?由于在PHP数据库等体系中,单引号等字符凡是有特别意义,为了和真实的字符辨别,咱们可以设置magic_quotes_gpc=on,如许假如咱们从用户端失掉的变量中有单引号时,会在后面加本义符,然后咱们可以依据需求用函数stripslashes(string str);(该函数可去失落字串中的反斜杠本义符“”。若是一连二个反斜杠,则去失落一个,留下一个。若只要一个反斜杠,就直接去失落。)往来来往失落本义符“”,咱们可以对照一下:

  <form>
  <input type="Text" value="" name="a">
  <input type="Submit">
  </form>
  <?php
  echo a;
  ?>

  让咱们分离在magic_quotes_gpc=on和off的情形下,在文本框中输出单引号、双引号,然后提交,看看有甚么区分?

  SMTP string 指定邮件发送办事器的域名或IP地址,如许咱们就能够发信啦,比起微软的ASP来,PHP的这个功效复杂便利很多了,有人要问,假如我没有装备邮件办事器怎样办?很复杂,只需填受骗地ISP的邮件办事器就好了。其实收发邮件办事器就像咱们实际生涯中的邮局一样,在哪一个邮局都能发信,而收信是在固定邮局。

  mysql.default_host string
  mysql.default_user string
  mysql.default_password string

  用过ODBC的读者们都晓得,设置ODBC的时分总需求设置数据库地点及其默许的登录用户名和口令,这几个参数也是这个意思,不外是用在MYSQL外面而已。为了平安起见,咱们还有需要在MYSQL里对该用户的权利做一些限制,万万不要偷懒用“root“啊!假如为了便利而设置了这些参数,那咱们就可以直接用函数mysql_connect()来毗连数据库了,注重这里可以不必任何参数!

  人人能够在想,固然如许很便利,同时也很风险呀!别急,在PHP的平安形式里这些参数是有效的,上面咱们来看看平安形式的设置吧。

  Safe mode boolean 这可不是WINDOWS 98的平安形式啊。当PHP体系处于平安形式下时,咱们就可以对PHP法式的行动停止必定的掌握,这时候候一些数据库好比MYSQL、INFOMIX等的默许数据库主机、用户名、口令等设置有效,不法用户就不克不及等闲毗连数据库了。并且在平安形式下safe_mode_allowed_env_vars string该项设置暗示甚么类型的体系情况变量可以被法式更改,若设置成safe_mode_allowed_env_vars=PHP_则暗示只要PHP_打头的体系情况变量可以被修正,例如这时候假如在法式中妄图利用putenv("windir=UUU");来修正情况变量,体系就会提醒一个平安形式的回护毛病。还有,平安形式对体系号令system()等有必定限制,如只能在指定目次运转等,如许能对体系文件有必定的回护感化。

  log_errors boolean 这个参数指定PHP法式失足时是不是要将毛病信息纪录在 LOG文档中。在NT体系中假如咱们同时设置error_log =syslog的话,咱们就可以在事务检查器的使用法式日记里看到PHP所产生过的毛病信息,这对测试一个大型的体系有些匡助。
error_prepend_string = "<font color=ff0000>"
error_append_string = "</font>"

  这两个设置参数更成心思啦,按如上设置,那末咱们一眼就可以看到:咱们的法式是不是失足了!由于他的功效是把失足信息设置成显眼的朱颜色了。

  至于其它的良多选项,有的一看便知,有乐趣人人本人尝尝吧!


我是根据自己的成长历程来写的,如有不对的还请指正。

谁可相欹 发表于 2015-2-4 08:19:35

先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。

蒙在股里 发表于 2015-2-9 16:40:53

首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。

若天明 发表于 2015-2-11 03:56:09

这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。

变相怪杰 发表于 2015-2-15 22:18:37

这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。

精灵巫婆 发表于 2015-3-3 23:10:36

真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,

若相依 发表于 2015-3-7 17:44:35

要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。

不帅 发表于 2015-3-13 11:08:43

我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:

愤怒的大鸟 发表于 2015-3-19 16:59:01

再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。

老尸 发表于 2015-3-27 11:11:05

当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,

因胸联盟 发表于 2015-4-1 01:08:29

在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、

飘灵儿 发表于 2015-4-1 22:09:47

对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。

透明 发表于 2015-4-2 12:21:09

先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。

乐观 发表于 2015-4-6 02:08:39

个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。

小女巫 发表于 2015-4-8 14:48:54

找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。

深爱那片海 发表于 2015-4-14 06:34:13

如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,

admin 发表于 2015-4-14 16:02:57

先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。

不帅 发表于 2015-4-15 16:15:15

真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,

仓酷云 发表于 2015-4-18 02:50:50

Ps:以上纯属原创,如有雷同,纯属巧合

小魔女 发表于 2015-4-29 16:07:11

首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
页: [1]
查看完整版本: PHP教程之透析PHP的设置装备摆设文件php.ini