仓酷云

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

[学习教程] PHP网页编程之php之面向工具(2)

[复制链接]
莫相离 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:12:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
基础这个工具是个比较笼统的概念,如果你之前学习过c语言,c语言被认为是 注重:看这篇文章之前倡议看看之前的文章,由于内容之间跟尾性对照强。勿喷。。  面向工具,是一种头脑形式的名字,并非指某种特定的写法,面向工具简称oop,思绪的中心在于:甚么时分甚么器材做甚么。  编程考究代码与思绪的相对符合,假如代码没有对应思绪的某个历程,那末思绪就和代码摆脱了,那末代码的由来就有待考据了,因为面向工具的形貌,不在乎详细的细节形貌,只在乎甚么器材做甚么,为了能让代码和思绪符合,封装便应运而生,只要封装才干使得一句代码对应一个做甚么,这就意味着我们必要晓得本人事前筹办好一堆“做甚么”,要末本人封装,要末用他人封装好的,为了使代码更正确的切合面向工具的形貌,我们必要用一个个的量来设想成为这个甚么器材,由于程序终极处置的时量,可是一般的量常常是一个个的正确的值,如许写出来的代码,顶多能够读作:读取一个文件写进一个文件,而方便于读作:文件做甚么,正如之前所说的面向工具考究的是甚么时分甚么器材做甚么,以是一般情形下我们会用实例化以后的类来暗示这个工具,由于实例化后的类内里无方法,如许一来,我们在利用这个实例化后的类时就能够把这个量视作一个工具,类内里的办法我们在代码编写的时分能够经由过程这个量挪用内里的办法,就更切合:甚么器材做甚么。  好比说:read($file);我们能够读作:读取“这个文件”,这里的重点是“读取”,文件只是被读取的器材,而读取是一个历程。这类思索形式就还称不上是面向工具而是面向历程。面向工具应当切合:甚么器材做甚么。$file->read();这个写法,就很简单看得出来,是文件->读取,是“文件”在读取,如许的形貌就更切合面向工具的头脑形式。以是说。面向工具封装起来只是为了代码更切合头脑的形貌。为了写的时分,代码更切合头脑的形貌。在之前我们一定看过他人写的类大概会看到一些办法,内里只要一个赋值,这看似蛋疼和过剩的写法实际上是为了在利用这个类的时分代码看起来能和头脑分歧的原因,上一篇的博客上封装的一个文件类假如我们有两个文件每一个文件都当作一个工具我们但愿从文件A里读出内容然后写进文件B里,A和B分离是两个文件,那我们就用这个类来形貌一下这个事变。复制代码$a=newfileclass("a.txt");$b=newfileclass("b.txt");//A把本人文件读出来$data=$a->read();//B记下这个文件$b->write($data);echo$b->read();复制代码完全代码以下复制代码<?phpclassfileclass{public$size=0;public$name=;publicfunction__construct($file){$size=filesize($file);$this->size=$size;$this->name=$file;}functionread(){$fp=fopen($this->name,"r");$data=fread($fp,filesize($this->name));fclose($fp);return$data;}functionwrite($data,$op=a){$fp=fopen($this->name,$op);$rs=fwrite($fp,$data);fclose($fp);return$rs;}}$a=newfileclass("test.txt");$b=newfileclass("b.txt");//A把本人文件读出来$data=$a->read();//B记下这个文件$b->write($data);echo$b->read();?>复制代码固然$b->write($data);能够改动其文件形式,很分明第一次运转有毛病再运转一次看看,这个类是为了完成这个形貌而做的筹办,为了使工具看起来更像一个活的工具,它必需晓得本人的名字。必需晓得本人的巨细,它必需能“做点甚么”,以是test.txtb.txt必要存在,为此我们必要在封装的时分多用点心机。以是是先有了利用时的思绪才有了类的封装,一个类,要封装的切合形貌这个用法才是一个及格的类,为此官方推出一个类库pear,供应了一年夜堆事前封装好的类,我们拿来用就行了,假如我们从其余中央晓得一个类我们应当怎样利用呢?第一步就是:晓得这个类,是针对甚么工具开辟的。假如一个类,不针对任何工具开辟,那它就只是一种封装体例罢了,当自界说函数用就行了。第二步:晓得这个类,都为我们的工具,供应了甚么属性和办法,经由过程属性,我们能够失掉工具的甚么参数。。大概改动属性值。我们可让工具发生甚么样的变更,都有甚么办法,这些办法,都能让工具做甚么,详细怎样做到的,就不必管了,假如你是为了进修怎样做到这个历程的话,能够往看一下他人的类的源代码。如今我们体验一下,之前的内容有代码分别也就是模板手艺。道理是把一切把持输入的代码写在另外一个文件,必要输入的时分再举行包括,要点是:模板文件里的变量要有严厉的商定,必需晓得模板内里有甚么能够输入的变量,甚么模样的变量,才干正确的赋值上往。另有另外一种模板道理是标志型的模板,在模板上,做上各类暗号。然后,把要赋值的变量和暗号逐一交换。为了不变量名抵触,我们常常把变量先暂存在另外一个中央。要显现的时分,再取回这些变量,处置事后,赋值到模板上。不论是间接赋值上往,仍是交换上往。为了便于办理这些历程,我们一样平常城市选择封装。一是为了便于反复利用代码。二是为了断绝以后代码的变量,因而,就呈现了利用各类分歧思绪制造的模板封装。他人封装好的。我们晓得道理就能够了,归正不过乎就是交换变量大概间接赋值。因而再次提到了smarty。。。smarty内容见下一篇。。用C语言重新编写,包括可以访问数据库。他将这些程序和一些表单直译器整合起来,称为PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程序。
小妖女 该用户已被删除
9#
发表于 2015-3-20 17:03:45 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
admin 该用户已被删除
8#
发表于 2015-3-13 08:08:20 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
莫相离 该用户已被删除
7#
 楼主| 发表于 2015-3-6 20:00:39 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
冷月葬花魂 该用户已被删除
6#
发表于 2015-2-21 06:25:05 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
只想知道 该用户已被删除
5#
发表于 2015-2-7 08:22:11 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
活着的死人 该用户已被删除
地板
发表于 2015-2-1 16:14:12 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
柔情似水 该用户已被删除
板凳
发表于 2015-1-24 13:30:59 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
山那边是海 该用户已被删除
沙发
发表于 2015-1-18 22:55:57 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-9-20 22:38

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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