仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1239|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计PHP autoload与include功能对照

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:52:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
小试一下身手,大概是没问题了,那么交给你个任务,做个留言本吧,这和HELLO WORLD有一比啊!^_^,同是新手面临的第一道关。   自PHP5后,官方大大丰厚了对面向对象的撑持,个中有个主要改动:引入了__autoload()函数,从此不再需求在php剧本的header写一堆的require或include了,用PHP函数手册中的话说:”它会在试图利用还没有被界说的类时主动挪用”。
这一机制大大加重了开辟人员的承当,只需在架构早期思索好了目次布局和定名标准,在开辟过程当中,需求再为代码中要用到的类分离去require响应的文件,削减了大批代码。
但如许一来,也轻易呈现运转一个法式,某个类文件被include屡次,例若有以下四个剧本:
  1. #file:include1.php include 'include2.php'; //@todo something
复制代码
  1. #file:include2.php //@todo something
复制代码
  1. #file:script1.php include 'include2.php'; //@todo something
复制代码
  1. #file:script2.php include 'include1.php'; include 'script1.php' //@todo something
复制代码
当履行script1.php时, include ‘include2.php’; 这行代码被履行了一次。而履行script2.php时,这行代码被履行了两次。
这里只是一个复杂的例子,在实践的项目中,include2.php被include的次数能够更多。如许重复的include,是不是会影响功能呢?为此我写了个剧本来测试。
  1. #file:SimpleClass.php class SimpleClass { public function __construct() { echo get_time() . "\r\n"; } }
复制代码
  1. #file:php_include.php for(&#36;i = 0;&#36;i < &#36;loop;&#36;i++) { include_once "SimpleClass.php"; new SimpleClass(); }
复制代码
当&#36;loop值为1时,剧本耗时约0.00018906593322754秒,当&#36;loop为1000时,剧本耗时约0.076701879501343秒。
假如咱们用autoload完成呢?
  1. #file:php_autoload.php function __autoload(&#36;class_name) { include_once &#36;class_name . '.php'; }   for(&#36;i = 0;&#36;i < &#36;loop;&#36;i++) { new SimpleClass(); }
复制代码
在这段代码中,我界说了__autoload函数,几近一样的剧本,当&#36;loop为1时,耗时0.0002131462097168秒,而当&#36;loop为1000时,耗时仅为后面代码的1/7,0.012391805648804秒。
但请注重看SimpleClass的代码,个中输入了一行字符串,假如去失落这行输入后再对照,会是甚么样的了局呢?
在&#36;loop同为1000的情形下,前者耗时0.057836055755615秒,而利用了autoload后,仅仅0.00199294090271秒!效力相差近30倍!
从下面的测试可以看出,当文件仅仅被include一次,autoload会损耗略微多一点的工夫,但假如在文件被重复include的情形下,利用autoload则能大大进步体系功能。
至因而否要利用autoload来束缚法式员,这就仁者见仁,智者见智了。在我看来,前提答应的条件下,就义这一点功能(某些情形下,乃至多是提拔功能)更加便捷的开辟,是值得的。
会有很多高手的鼓励,新手的支持,慢慢你劲头就十足,有更多的信心和兴趣去学。
小女巫 该用户已被删除
沙发
发表于 2015-2-4 06:37:15 | 只看该作者
做为1门年轻的语言,php一直很努力。
透明 该用户已被删除
板凳
发表于 2015-2-6 19:33:10 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
分手快乐 该用户已被删除
地板
发表于 2015-2-18 10:41:33 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
再现理想 该用户已被删除
5#
发表于 2015-3-5 17:20:06 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
活着的死人 该用户已被删除
6#
发表于 2015-3-12 10:44:34 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
蒙在股里 该用户已被删除
7#
发表于 2015-3-19 20:39:12 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
柔情似水 该用户已被删除
8#
 楼主| 发表于 2015-3-21 18:20:34 | 只看该作者
当然这种网站的会员费就几十块钱。
因胸联盟 该用户已被删除
9#
发表于 2015-3-22 21:09:43 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
小魔女 该用户已被删除
10#
发表于 2015-3-22 22:10:29 | 只看该作者
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
愤怒的大鸟 该用户已被删除
11#
发表于 2015-3-25 14:30:15 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
山那边是海 该用户已被删除
12#
发表于 2015-4-3 04:40:46 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
深爱那片海 该用户已被删除
13#
发表于 2015-4-4 16:11:49 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
简单生活 该用户已被删除
14#
发表于 2015-4-21 19:03:22 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
乐观 该用户已被删除
15#
发表于 2015-4-27 15:58:07 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
变相怪杰 该用户已被删除
16#
发表于 2015-6-8 03:09:39 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
再见西城 该用户已被删除
17#
发表于 2015-7-1 12:54:02 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
若天明 该用户已被删除
18#
发表于 2015-7-11 21:38:45 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
只想知道 该用户已被删除
19#
发表于 2015-7-13 08:22:23 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
飘灵儿 该用户已被删除
20#
发表于 2015-7-15 01:54:04 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:47

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表