- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP其他有用的特性
其他有用的特性★魔术引号主要是为了给用户输入的信息自动加上反斜杠 \ PHP.ini中的magic_quotes_gpc控制是否自动增加 \ ,当取出用户输入的数据时,则要用get_magic_quotes_gpc()函数来测试当前的配置是否打开魔术引号功能,这时要判断返回值来调用stripslashes()函数来除去多余的 \ ,从而保证输出的数据与输入时相同。★使用eval()函数对字符串求值eval(echo hello world;);相当于:echo hello world;eval可以计算出PHP代码字符串的值并执行它。当数据库中存储一段代码时,当用循环生成一段代码时,都可以使用此函数来执行它。eval最学见的用法是系统模板化。也可以实现从浏览器端输入PHP代码,然后在服务器端执行。★die和exit可以直接调用:exit;亦可以:exit(Script ending now);die与exit相似。这两个语句与一个可能失败的语句一起使用,主要用来实现推出错误。mysql_query($query) or die(Could not execute query);如果不希望以上代码只打印出一条简单的错误信息,可以在脚本中断前调用一个函数:fuction err_msg(){return Mysql error was: .mysql_error();}mysql_query($query) or die(err_msg());还可以将错误信息以电子邮件的方式送给自己,也可以将错误信息加入到日志文件中。★序列化变量和对象序列化是指将可以保存在PHP变量和对象中的任何数据转换成字节流的处理过程,这个字节流可以存储在数据库中,或者通过URL在网页之间传递。如果不使用这个处理过程,很难存储和传递整个数组或对象的内容。数据的序列化现在可以使用会话控制来实现。事实上,为了将会话变量在HTTP请求之间存储,可以使用会话控制函数来序列化会话变量。我们可能还希望将PHP数组或对象保存到一个文件或数据库中,如果要这样做,就必须要了解如何使用这两个函数:serialize()和unserialize()$serial_object = serialize($my_object);serialize()将一个对象(比如PHP的一个类)转换为一条文字说明,从而可以很容易的存储到数据库中。同样要对序列化后的文本使用addslashes()进行安全处理。要恢复原来的对象,可以调用unserialize()函数$new_object = unserialize($seria_object);当序列化时使用了addslashes()函数,则在恢复前要使用stripslashes()函数。注意:在PHP能够重新实例化一个类之前,它必须知道类的结构。因此,必须在调用session_start()或unserialize()函数之前包含该类的定义文件。获取PHP环境信息★找到所加载的PHP扩展部件get_loaded_extensions()和get_extension_funcs()可以方便地了解哪些函数集合是可用的,以及在每个函数集合中又有哪些函数是可用的。★识别脚本所有者get_current_user()可以识别当前处于运行状态的脚本的所有者。在解决权限问题的时候用到。★确定脚本最近修改时间getlastmod()函数可以确定脚本的最近修改时间★动态加载扩展部件(php.ini中的enale_dl指令必须开启)可以在运行时使用dl()加载扩展部件。在UNIX系统中这些文件以.so为扩展名,在Windows系统中以.dll为扩展名。dl(php_gd2.dll);我们不必指定扩展部件文件的目录,而在php.ini文件中配置它。extension_dir指令可以指定PHP动态载入扩展部件需要查找的目录。★暂时改变运行时环境可以在php.ini中查看指令集,或者也可以在一个脚本的运行周期中修改它们。这个特性是非常有用的。例如,我们希望一个脚本运行较长的一段时间(比如上传文件),可以通过设置max_execution_time指令来限制脚本的最长运行时间。使用ini_get()和ini_set()可以访问和修改指令。ini_set()需要两个参数。第一个是文件php.ini中的配置指令的名称,即修改对象;第二个参数是修改后的值。此函数将返回配置指令的前一个值(即返回旧值)。并不是所有的INI选项都是可以通过这种方式进行设置的。每一个选项都有允许设置的级别。★源代码加亮PHP内置一个默认的语法加亮器。这项功能在与别人共享代码或在Web页面上讨论并展示这些代码时非常有用。show_source()和highlight_file()是一样的,都需要一个文件
文档评论(0)