php一课一得

       我想在讲述自己的学习方式前,对那些期望能从我的文章中获得有用信息的人说一句心里话我的文章不会对您的学习起到实质性的作用,您能否成功,还得靠自己的,坚持,坚持,再坚持就是步入成功的不二法门。
       我先把我自己学习PHP的过程做一下概括(1)熟悉HTML/CSS/JS等网页基本元素,完成阶段可自行制作完整的网页,对元素属性达到敦悉程度
        (2) 理解动态语言的概念,运做机制,熟悉PHP语法
        (3)学习如何将PHP与HTML结合起来完成简单动态页面
        (4) 接触MYSQL,开始设计数据库程序
        (5) 不断巩固,摸透大部分PHP常用函数,并可理解OOP,MYSQL优化,以及模板
        (6) 完成一个功能产全的动态站点

        开始慢慢的从基础做了。记得最开始的时候做的是一个跟“正则表达式”有关的东东。就是冲搜索引擎上偷数据。虽然现在看来很简单,但那时看来还是很复杂的.
再后来,开始做一些站点了。在css和javascript方面有有一些学习。以及其他的一些PHP的函数操作。一般都是字符串的操作等等。熟悉一些函数。
        后来就是写了一些简单的系统。记得我们班推优入党的时候,我写了一个投票系统,装在一个本里面。带到教室里面去投的。那个时候觉得还不错,现在想想那个投票系统还是有很多的不足的。例如没有投票次数的限制等等。(但是觉得都是自己班的,应该不会出现什么吧,结果还是出问题了。本来是一人投两票的,结果是出现了单数的总票数,哎哎)
其实投票系统已经涉及到了数据库的操作了。有了数据库操作的基础,就可以开始做文章发布系统了。给自己的站点写了一个文章发布系统(之前没有存入数据库的时候,我都是用Dreamweaver在本地生成,然后上传的,现在想想,麻烦死了)。
        文章发布系统写好了之后,就是对这个发布系统的一些优化了。比如,文章发布的时候静态页的自动生产,目录的自动更新,文件上传等等。还有管理员登录安全的一些操作。
到目前为之就这样啦。其实中的感觉就是学习一门语言入门就好办了。当初在学习C++的时候也是这样的,由于没有基础,最初的几周,都是迷迷糊糊的,入了门,对语言这种东西有了感觉,进步就很快了的。
       我的这套线路可能跟许多学习PHP的爱好者不谋而合,这也算是一个循序渐进的学习过程,不过新手不要看到上面的概括就以为学习蛮简单的,默默在此不得不对您稍微泼一下冷水,任何东西其实都不简单,即便是小吃部的烧饼也不是一下子就会做成的
我先解释一下我的学习思路
       首先,理解网站这一概念之后不难看出,任何网站都是由网页组成的,也就是说想完成网站,必须先学会做网页,因此必须要掌握了HTML,才能为今后制作网站打下基础。
在学习HTML中我想边学边做是最有效的方式,当然这一方式对于学习PHP同样是最有效的。

        HTML中的任何元素都要亲自实践,只有明白了什么元素会起到什么效果之后,你才会记忆深刻,而一味的啃书,绝对是不行的,我想大部分新手之所以觉得概念难学,大部分是一个字“懒”,懒是阻止进步的最大敌人,所以克服掉懒的习惯,才能更快的学好一样东西。
也许您在学习PHP的时候只想尽快的开发一个网站,也就会想我做网站,,干嘛要学什么网页这些小儿科?不难看出,眼高手低的新手不在少数,这种思想无疑于建造空中楼阁,你不建地基,何来的房顶呢?
        OK,掌握静态网页的制作技术是学习开发网站的先决条件,这一点就讲到这里,因为这篇文章不是教程文章,也就不对技术进行深入的刨析了
我假设你目前已经可以完成一个静态页面了,当然,做的好看难看是另外一说,皮皮我的第一个网页也没好看到哪去,但是“孩子”再丑,咱们做“爹妈”的也不能嫌弃不是?这毕竟是咱的成果。
那么咱们就开始学习动态语言的概念吧,刚一接触动态语言,可能很多人都会蒙了,怎么这乱七八糟的东西,在网页里显示的时候却是另外一码事? 其实这并不算乱七八糟,你写的HTML代码不也一样是一堆堆的字符吗?毕竟,代码并不是作为直接输出的,而是经过处理的,说白了,HTML是经过HTML解析器,而PHP当然也就通过PHP解析器了,跟学习HTML一样的道理,想让任何的解析器完成操作,就必须使用它们专用的语法结构,所以PHP长相奇怪也就不足为奇了
        对于PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧,书过三遍自然熟,这个简单的道理告诉我们,即使你理解不了PHP,但是也必须先跟它混个脸熟看,一遍遍的看,看的同时一边琢磨,一边按照它所教的打代码,即使你搞不清楚那些代码到底是干嘛的,但是起码你应该找找感觉在一段挣扎之后,聪明的你,显然已经逐渐的开悟了,慢慢的理解了编程的概念,那么祝贺你,你已经迈出了成功的第一步。
        搞清楚HTML和PHP的概念,那么PHP和HTML混合编程应该不成问题,在这期间,你完全可以让PHP给你算算 一加一等于几,然后在浏览器输出,不要觉得幼稚,这的确是跟阿波罗登月一样,你打的是一小段代码,但是对于你的编程之路,可是迈出了一大步啊! 兴奋吧?但是不得不再给你泼点冷水,您还是菜鸟一个。
高兴一段时间就必须继续努力了,接下来就是学习数据库了,MYSQL可算是PHP的黄金搭档了不过,虽然话是这么说,你也可能恨不得把MYSQL给生吞活剥了,因为这一行一列的东东简直让自己头量归头量,目眩归目眩,你不可能吃饭的时候咬了自己一下舌头就从此不吃饭了不是? 放下畏师继续努力,咱们是来征服它的,而不是被它征服的,振奋起来吧同志。
在一番搏斗之后,你终于理解了数据库的概念,而且让你兴奋不已的是你终于可以通过PHP来连接
数据库了,这期间你是怎么学会的,我们不去考证了,但是事实证明,你已经可以了。学会了PHP和数据库的你,无疑是左手拿着MOTOLOLA右手拿着NOKIA,要多潇洒,有多潇洒哈哈,终于学会了,但是可能这个时候,又会有人不经意的拍拍肩膀对你说:哥们,别高兴的太早,你还是菜鸟,离学会还差着一大截呢!等到你发奋努力的学会了用PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了。
这个时候的你也许是这种状态心态
        我说了php入门很容易,不错,但我不说php它很容易,php应用起来博大精深,如果你说做php很简单,那么我只能说你懂php懂得比较简单吧。在大学读书的时候大家一定要心态摆正,比如你想学什么语言,以后要做什么程序员,比如iava,C++,我进一例子,比如你立志做java程序员,你首先在校学校开这课程时努力要把它学好,学好了还不行哦,因为这些只能应付考试的,工作上这算是不起眼的知识,所以在剩下来的读书时间努力涉及一些应用上的,更深层次的知识,把iava的学得更深才行。人的精力是有限的,你如果想一起同时学精通php,又精通java,等等,算了吧,人家工作了几年都不敢说精通,还在校的只能说是不知天高地厚了。一-如果你以后想编程就努力专一花大量的时间深学它,当然也要多学一下其它的。初学者不要有这种精几门编程语言的心态,到头来样样不精,连工作也找不到。

        书买书来学习是最直接实在的,网上中原的视频教程,it实验室的算了吧,想看它们就会php是不行的,如果想学某种编程语言,就要买到那种编程语言最书的几本书来一起看,为什么要买几本呢,因为这样的,有书的这节讲不够细,那些书偏会讲得细,这样有个互补。把它们的理解合起来,更易加深对程序的理解。学好入门的后就买几个开发实例的书来看,最好把里面的代码都打打运行一下,慢慢地就会适应工作。如果你舍不得买几十元一本的书,那样你会多走很多弯路。

PHP手册是比较好的入门老师
影响学习进度和程序强大是否的几个可能因素
1、记忆力
        一门语言的强大是否,应该看它的函数库和代码执行效率。每门语言都是有自己强大的函数库,要学好它,就必须得花很多的时间去记忆,良好的记忆力能使学习达到事半功倍的效果
2、数学和逻辑思维
        这个当然不是绝对影响,因为看开发项目的复杂程度。小的项目不需要太多的数学和逻辑思维能力,但如果是开发类似于财务或大量运算相关项目,这一点就是非常重要了.
3、有其它语言的基础
        "一通百通”,这句话的道理也是不容置疑。都说有C语言基础的人,学习PHP比较容易,我没学过C语言,所以不知道这句话的效果。
4、多看别人写的代码
        学习别人的长处,补自己的不足,当然不完全为这个我始终相信: 一个有组织的团队写出来的程序不会比个人差我PHP入门就是从看代码开始的,我喜欢看别人写的代码。(入门是从disuczPHPWind和国外的phpbb看起,还有就是目前最流行的开源BLOG程序),我尽可能的收集网络上的PHP开源程序,到目前为止,我收集并下载的PHP开源程序有2GB大小,包括BBS,BLOG,CMS等我下载并不是为了收藏他们,是学习他们的编程方式和实现方法,如果自己想实现的功能不知道怎么去实现,我就会学习他们的实现方法,并不是抄袭代码,最终结果是想通过学习,将技术变成属于自己的ASP我也是以同样的方式学习的(动易和讯的程序及其它ASP开源程序)。

实践
理论固然重要,但实践必不可少。你理论知识再好,如果不实践,就不能看到理论所产生的结果或效果,并不能使你的记忆深刻,所以不能纸上谈兵。
6、恒心
        广告不是有句话是这样说的么:这句话相信朋友们都能理解"世奥上最高的山是自己”,
过自己这关,其它的都好办。
7、找对自己有用的学习方式
        这条可以参照4,我的入门是从看代码开始可能有朋友会问: “一开始看那些强大的代码,你能看懂么?”我的学习方式是从“使用”找“学函数”:PHP的函数太多,短时间不可能记住所有的函数因为我相信,一个大的项目肯定会使用常见和必须的函数,找到这些函数,才会有重点的学习这些函数,难道你能说写BBS的函数会写BLOG用的函数少么? 难道会写BBS还不会写BLOG么? 找对学习方式是要经过多种学习方式的尝试,所以这个只有自己把握,毕竟每个人的学习方式不一样
8、尽可能的找视屏教程看
        别人说十句,还不如一个操作看的明白,这个相信朋友们都有体会吧.

9、从项目开始
        定要”逼”自己从写项目开始。任何一个高手的“成长”都是要经历一个过程,这个过程是一步步走过来的,来之不易很多朋友学习PHP的第一个作品几乎都是“留言簿”,因为是最简单的程序了会写留言簿,也并不能完全代表你已经入门了,也并不代表就会了PHP,我自己开始想以一个“网络书签”作为自己的第一个作品,但写了基本功能后就没继续了,感觉没多大意思。现在写一个完全正确针对企业的CMS系统,包括针对企业的一些常用功能,我想以这个作为自己PHP入门的第一个作品
10、了解并学习和PHP有关的技术
        真正的高手必须得学习和PHP关联的技术,要想学好PHP,就必须得学习数据库,PHP+MYSQL被认为是“黄金搭档”所以你必须得接触MYSQL或你认为比较好的数据库,开始设计比较”合理”的数据库,这里的合理就比较广泛了,包括数据库优化和查询优化等等。
最后想说的是:“不要依靠别人”没人愿意理会一个新手的提问,因为新手提问的在他们眼里太简单,不想去解释女性朋友很流行一句话是“男人靠的住,母猪会上树”引用这句话没别的意思,只是让朋友们知道这句话的意思。

9、从项目开始
定要”逼”自己从写项目开始。任何一个高手的“成长”都是要经历一个过程,这个过程是一步步走过来的,来之不易很多朋友学习PHP的第一个作品几乎都是“留言簿”,因为是最简单的程序了会写留言簿,也并不能完全代表你已经入门了,也并不代表就会了PHP,我自己开始想以一个“网络书签”作为自己的第一个作品,但写了基本功能后就没继续了,感觉没多大意思。现在写一个完全正确针对企业的CMS系统,包括针对企业的一些常用功能,我想以这个作为自己PHP入门的第一个作品
10、了解并学习和PHP有关的技术
        真正的高手必须得学习和PHP关联的技术,要想学好PHP,就必须得学习数据库,PHP+MYSQL被认为是“黄金搭档”所以你必须得接触MYSQL或你认为比较好的数据库,开始设计比较”合理”的数据库,这里的合理就比较广泛了,包括数据库优化和查询优化等等。
最后想说的是:“不要依靠别人”没人愿意理会一个新手的提问,因为新手提问的在他们眼里太简单,不想去解释女性朋友很流行一句话是“男人靠的住,母猪会上树”引用这句话没别的意思,只是让朋友们知道这句话的意思。
还想说的是:“珍惜别人回答的次数”人的忍耐都是有限度的一定要珍惜这个限度,不要什么问题都去问,有些问题自己花点时间能找到答案的也去问,每问一次,别人的耐心就减去一次,等你真正需要帮助的时候,正好是别人不愿意回答你的时候,可以想像一下,你失去的太多了。
"有问题? baidu一下”相信朋友们都已经注意到了,你问的问题,在搜索引擎里都能建议的是:找到相关的提问,并且有详细的解决方案,你可以使用搜索引擎来找到自己的答案,何必去问别人呢.
还想说的是:“珍惜别人回答的次数”人的忍耐都是有限度的一定要珍惜这个限度,不要什么问题都去问,有些问题自己花点时间能找到答案的也去问,每问一次,别人的耐心就减去一次,等你真正需要帮助的时候,正好是别人不愿意回答你的时候,可以想像一下,你失去的太多了。
"有问题? baidu一下”相信朋友们都已经注意到了,你问的问题,在搜索引擎里都能建议的是:找到相关的提问,并且有详细的解决方案,你可以使用搜索引擎来找到自己的答案,何必去问别人呢.
        你会HTML吗? 会,我能编好几个大表格排板的网页啦!

        你会PHP吗?会,我会把一加一的运算写在函数里,然后调用啦!你会MYSQL吗? 会,我会把我的信息在数据库里插入删除啦
那,接下来你该怎么做呢?我觉得,小试一下身手,大概是没问题了,那么交给你个任务,做个留言本吧,这和HELLO WORLD有一比啊! 同是新手面临的第一道关
花了一段时间,你终于学会把表单的数据插入数据库,然后显示出来了,应该说一个程序的雏形已经诞生了。
        但是,你可能瞅瞅东,看看西,人家这个编论坛,那个CMS,还有那啥CRM,我啥时候写一个呢?不要急,可以说你的马步已经扎的差不多了,接下来就要开始练把势的时候了,如果有条件的话用笔或者打印一个简易的PHP手册在身上,时不时的摸出来看看,记得,去WC也不能放过
再有条件的话,买本书看看吧,《PHP+MYSQL WEB开发(第三版)》号称圣经级, (也许是个不错的选择(声明:作者没给我啥好处费,我也不是书托,隔着大老远,我连他老兄的面都没见过的
巩固了自己的知识,熟悉了PHP和MYSQL开发的要领之后,再回头看你写的那人留言本,你也许会怀疑那真的是你写的吗? 当然,如果屋里还有鬼的话,也许是它写的。
        这个时候,你的留言本应该加入注册以及分页功能了,而如果你更强的话,UI(用户界面)也可以加强,完成之后,感觉是不是特有成就感?不管怎么样,咱好歹是写了一个动态网站程席了,放在自己的网站上耍耍吧,让好朋友来看看,嘿,看咱写的多棒,然后再在网上宣传一下。几天之后你再打开留言本,哎? 哇,一下弹出N多页面!很明显,你的留言本并没有做好安全防范,被人用JS代码小小的耍了一下,我很同情你这个时候的感受,但是没有别的办法了,继续努力吧!你发奋努力,熟悉了安全方面的问题,然后又设计了一些程序,感觉还不错
那么接下来,这就算学会啦? NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧? 模板
呢?恩,学! 加紧学呀学,学会了这些之后,你又学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧? AJAX完了。然后.....
总而言之,你绝对不会发现你全部都学会了,一些真正的强人总会搞出新玩意来丢给你,你不学就落后了,也印证了前人的经验,果然是学无止境啊!
        我想通过我的一番YY,你也应该大致熟悉了一些学习过程,也许我的过程和你的有些出路,但是不管怎么样是殊途同归,我写这么多,也只是给大家一个借鉴的机会,至于好与不好,默默不敢打包票看完之后你发现,罗嗦这么多,对我一点用处没有啊,我知道该怎么学,但是我想如何才能更快的学一周速成,啊不,24小时速成那种,皮皮你有没?
我.......我没有,但是2分钟之内把你扁进医院里,我倒是有把握学东西,永远不要妄想有速成这一说,告诉你了一个方式,但是缺少努力这一环节,那也是白搭但是有一点我可以给你保证的就是,你学会了PHP,那么学其他的语言,肯定速成,反过来也样,如果你之前学过其他的语言,那么学PHP肯定快。不过语法好学,但是怎么用语法来实现每个人都有每个人的方式,几乎是各有千秋。然而借鉴别人成功的代码,绝对是有益无害,因此,多看那些经过千锤百炼凝出来的经典代码,是进阶的最好方法。
        讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果自己想放弃,一点的话,就自己抽自己个嘴巴,然后大吼:别人可以,我为什么就不可以?(是不是有点阎罗教练的味道,默默的确是电影看多了,抽嘴巴是会痛的,各位其实明白这个道理了就行了)
另外要叮嘱各位的是,抵御诱惑,ASP/PHP/JSP/。NET的对比也许会让你无所适从,你也许学了半PHP,又开始打C#的主意,或者有人说JA很强,这个时候的你绝对不能动摇,哪怕你真想学,也得学会了PHP。然后再学,见异思迁是最不可取的,狗熊掰玉米就是这个道理,如果经常中途放弃,只能是一无所获,还浪费了N多的时间和经历,得不偿失,最重要的是,你会被别人瞧不起,没有人会喜欢和见异思迁的人交朋友,因为这种人太不安分,太不可靠,因此,你必须要强迫自己完成自己的目标,哪怕可能会很难受,也得坚持,毅力就是这么锻炼出来吧。

        php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理,这样你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了
而在接触php前,我主要是专攻iava web这个方向,虽然ava学习起来有些难度,但我却被它的面向对象特性深深吸引住。
        实际上,从技术架构来说,Java语言相比PHP有明显的优势,Java使用的是面向对象的系统设计方法,而PHP还是采用面向过程的开发方法。PHP只能实现简单的分布式两层或三层的架构,而JAVA可以实现多层架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。例如Struts就是利用Java的web开发技术实现了MVC的设计模式,而在业务逻辑层也有Spring框架,数据库持久化层有Hibernate等框架。这些框架可以方便开发者高效、合理、科学得架构多层的商业应用。从数学运算和数据库访问速度来进,Java的性能也优于PHP实际上,对于跨平台的大型的企业应用系统来讲,Java几乎已经成为唯一的选择(微软NET不支持跨平台),但是在于Web网站应用开发来讲,Java却面临着被PHP边缘化的危险,几乎所有的虚拟主机都支持PHP+MySQL,而支持Java的却少之又少,在资源上,网上有不计其数的PHP资源,很多著名的大型网站 (例如Facebook、 Mediawiki等) 都是基于PHP的。
        phper懂得php是最基本的! 但必须要熟练is,css,html,sql,数据库,设计模式等等。说真的,我总觉平时写js,比php还写得多。如果说php你强,那么熟练js,css,html,sql,数据库.设计模式等等就是你值钱的地方了。不懂它们,你php再好,也算是菜鸟。工作中很快被淘汰。大家能理解到这个重要性吗
多读源代码
多读开源的代码,dz,dedecms很多php的开源代码,读多了你思路更广了,你会发现很多很妙的写法,也是提高水平最快的方法之一
坚持
做事要坚持,学编程也要,这是前提,是基本

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值