php培训技巧全部免费大放送

使用PHP本身的对话

  PHP4.0中最令人兴奋的特性应该是对对话的支持,PHP3.0的用户必须使用第三方的软件否则就不能使用对话,不支持对话一直是PHP培训最大的缺憾之一。

  只要用户在浏览你的网站,你就可以利用对话维护与特定用户有关的变量,而无需建立多个cookie、使用隐藏表格字段或将信息存储在数据库中。

  在一个网页上启动一个对话,就会使PHP引擎知道你想启动一个对话(如果还没有启动)或者继续当前的对话:

  session_start();

  启动一个对话将通过cookie向用户发送一个识别字符串(例如940f8b05a40d5119c030c9c7745aead9),在服务器端,会创建一个与识别字符串匹配的临时文件,例如sess_940f8b05a40d5119c030c9c7745aead9,这个文件中包含的对话变量以及它们的值。

  用来显示对话的作用的最常见的例子是访问计数器。启动PHP模块,确保PHP代码是文件的第一行,在PHP代码之前不要有空格、HTML代码和其他的代码。因为对话会发送一个头部,因此如果在session_start()之前有空格和HTML代码,就会得到一个出错信息。

  <?

  //如果还不存在一个针对某用户的用户,则启动一个对话:

  session_start();

  然后一个名字为count的变量:

  session_reGISter(&39;count&39;);

  一个对话变量后,只要对话存在,名字为count的变量也就存在。现在,count变量还没有被赋值,如果对它执行加1操作,它的值就变为了1。

  $count++;

  把上述内容综合在一块儿,如果还没有启动一个对话,就会启动一个对话;如果不存在一个对话id,就为用户指定一个好了,一个名字为$count的变量,对$count执行加1操作表示用户已经首次访问了该网页。

  要知道用户在当前的对话中访问本页面的次数,只要显示$count变量的值即可:

  echo"<PYou&39;vebeenhere$counttimes.</p";

  全部的访问计数器代码如下所示:

  <?

  session_start();

  session_register(&39;count&39;);

  $count++;

  echo"<PYou&39;vebeenhere$counttimes.</p";

  ?

  如果重新加载上述的代码文件,就会发现变量count的值增加了1,很酷吧。

  还可以在对话中一个数组变量,假设我们了一个名字为$faves的变量:

  $faves=array(&39;chocolate&39;,&39;coffee&39;,&39;beer&39;,&39;Linux&39;);

  可以象一个简单变量那样一个数组变量:

  session_register(&39;faves&39;);

  引用数组变量与引用简单变量没有什么二样,如果一个用户在网页上指出在生活中的爱好时,可以把他的爱好到一个被称作$faves的数组变量中,然后可以在另一个网页中很方便地把这些爱好显示出来:

  <?

  session_start();

  echo"Myuserlikes:

  <ul";

  while(list(,$v)=each($faves)){

  echo"<li$v";}

  echo"</ul";

  ?

  然后你就得到了一个关于用户爱好的清单。

  对话变量不能被查询字符串覆盖,也就是说我们不能输入yourdomain/yourscript.php?count=56给变量$count指定一个新值,这一点对于安全很重要:只能在服务器端的代码中删除一个没有的对话变量。

  如果要完全删除一个对话变量,首先需要从系统中注销它:

  session_unreGISter(&39;count&39;);

  要完全删除一个对话变量的代码是非常简单,如下所示:

  session_destroy();

  使用对话变量可以减少访问数据库的频率,使代码更加清晰,而且可以减少对用户发送的cookie的数量,它是最简单的方法了。

  三、文件是我们的朋友

  无论你在开发的网站规模的大小,都应该意识到代码重用的重要性,无论这些代码是HTML、还是PHP代码。例如,你必须至少每年改变一次包含版权信息的页脚,如果你的网站含有1000个页面,每年修改一次也是个很烦人的事儿。

  在PHP中,至少有几个函数可以帮助你实现代码重用的目的,所使用的函数取决于你所重用的代码,主要的函数有:

  *include()andinclude_once()

  *require()andrequire_once()

  include()函数包含并对给定的文件进行计算,例如:

  include(&39;/home/me/myfile&39;);

  在include文件中的任何代码都在include()出现的代码范围内执行,你可以通过联合使用include()和fopen()在自己的服务器上包含静态文件,在另一台服务器上包含目标文件。

  include_once()的功能与include()相同,二者之间的区别在于它会检查一个文件中的代码是否已经包含在现有的代码中,如果代码已经存在,则不会再次包含它。

  require()函数用给定文件的内容取代它本身,这一代替过程发生在PHP引擎编译代码期间,而不是在执行期间进行,它不象include()那样会首先进行计算。require()函数更多地用在静态元素中,而include()更多地用于动态元素中。与include_once()类似的是,require_once()将首先检查是否已经插入给定的代码,如果代码已经存在,就不再插入了。

  为也了解其内容,在版权信息、静态文字和其他不包含变量的元素或者依赖其他正在执行的代码的元素中我更趋向于使用require函数。例如:

  <HTML

  <HEAD<TITLESomething</TITLE</HEAD

  <BODY

  [alotofcontent]

  <?

  //insertcopyright

  require(&39;/home/me/mycopyright&39;);

  ?

  </BODY

  </HTML

  另一方面,我经常在文件的开始使用include()来控制许多的函数:

  <?

  //得到函数库

  include(&39;/home/me/myfunctions&39;);

  //doPHPthingswithmyfunctions?

  <HTML

  <HEAD<TITLESomething</TITLE</HEAD

  <BODY

  [alotofcontent]

  </BODY

  </HTML

  下一个问题就该是“include和require文件在哪里?”,对这个问题简单的回答是,“系统中的任意地方。”如果你的代码中包含有带有用户名和口令的数据库连接,你肯定不会将它们都放在文档根目录中向所有的人都开放。

时间: 2024-10-08 22:54:41

php培训技巧全部免费大放送的相关文章

IC卡解密从零开始学1 (也许会有2) 解密工具V2 V3大放送 By:lookyour

前段时间发了一个破解的PN532工具,详见 ===========================IC卡解密工具 PN532工具XP 爆破版http://www.52pojie.cn/thread-597896-1-1.html IC卡解密从零开始学2  解密工具PN532-mfoc-mfcuk-GUIhttp://www.52pojie.cn/thread-604402-1-1.html =========================有很多人私信和回复希望有个详细点的介绍... 好吧,本着

各大牛逼讲师的经典Jquery精品视频教程,大放送啦!!!(包括手机移动端JqueryWeb开发)!!!

各大牛逼讲师的经典Jquery精品视频教程,大放送啦!!!(包括手机移动端JqueryWbd开发)!!! [1]jQuery手机端开发视频教程篇 [10]扬中科JQuery基础教程.zip [15]Jquery基础视频教程 [8]炫丽效果教你做之jQuery实战 [3]曹鹏老师jQuery视频教程      下载链接见下面...............数不尽的资源等你来拿哦..... [1]jQuery手机端开发视频教程篇  链接: http://pan.baidu.com/s/1sjMcwwP

庆中秋、迎国庆,福利大放送!充值返金币!最高送20%!

知识改变命运,技术成就梦想,要赚钱先学习!可是管家们总是收到小伙伴们抱怨课程贵,囊中羞涩,这可肿么办呢? 这不续学院周年庆活动后,中秋节到来之际,又来一大波充值福利来袭~趁着中秋节和十一假期的到来,大小管家特地说服老板给大家发补贴!充值返金币,绝对不含糊,学员充充充,学院送送送~ 充值的金币可以在学院任意消费(购买课程.套餐.会员卡.培训班均适用哦)错过悔一年~~ [活动时间] 2015.9.22 0:00:00--2015.9.24 23:59:59 (限时3天优惠大放送!各位小伙伴一定要注意

ym——android源码大放送(实战开发必备)

文件夹 PATH 列表 卷序列号为 000A-8F50 E:. │  javaapk.com文件列表生成工具.bat │  使用说明.txt │  免费下载更多源码.url │  目录列表.txt │ ├─android web应用 │      jqmDemo_static.zip │      jqmMobileDemo-master.zip │      jqmMobileDemo1_1-master.zip │      Location1014.rar │ ├─anko │      

图像处理与机器视觉网络资源收罗——倾心大放送

做图像处理或计算机视觉研究和开发,常会在线搜索一些资源,日积月累便挖出了一堆比较牛的博主,特别说明:做这个方向的人很多,牛人也很多,但是这些资源大部分主要突出实用主义,相关博主也并不一定是这个领域中的泰山北斗(第一波中大部分都不是学校里的教授),但是他们的空间里真的有料,可以学到很多.不断更新中,但大浪淘沙,我只保留最值得推荐的. 第一波是一些资源丰富的博客,有算法介绍,也有代码实现: 1.毕业于荷兰特温特大学的Dirk-Jan Kroon博士,在Mathworks的FileExchange上的

TB级(小白到大牛之路)技术视频资源福利大放送

因此民工哥连夜整理了相关的资源放出,相关详情请点击下面的链接查看TB级(小白到大牛之路)技术视频资源福利大放送 更多内容请关注民工哥公众号 原文地址:http://blog.51cto.com/mingongge/2058991

CSS顶级技巧大放送,div+css布局必知

字体大小使用px 在一行内声明CSS 对比下面两个: h2 {font-size:18px; border:1px solid blue; color:#000; } h2 {    font-size:18px;    border:1px solid blue;    color:#000;        } 第二种看起来的确格式化,但是不会在阅读上有任何帮助.写在一行内可以让你更快的找到需要的部分. 以前我也是写成类似第二种方式,但是逐渐发现就像文章说的一样,没多大用.一行看起来又爽快又省

jQuery技巧大放送

1.关于页面元素的引用 通过jquery的$()引用元素包括通过id.class.元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法. 2.jQuery对象与dom对象的转换 只有jquery对象才能使用jquery定义的方法.注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象. 普通的dom对象一般可以通过$()转换成jquery对象. 如:$(document.ge

jQuery常用技巧大放送

1.关于页面元素的引用 通过jquery的$()引用元素包括通过id.class.元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法. 2.jQuery对象与dom对象的转换 只有jquery对象才能使用jquery定义的方法.注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象. 普通的dom对象一般可以通过$()转换成jquery对象. 如:$(document.ge