仓酷云

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

[学习教程] PHP网站制作之一篇成心思的手艺文章php引见篇

[复制链接]
冷月葬花魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:41:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我先解释一下我的学习思路。   身为一位中级PHPer菜鸟..无聊了就爱在各个PHP服装论坛瞎转.看到了很多多少PHP初学者都问到了良多不异的成绩.并且我学PHP的时分也都碰到过.为了 让PHP初学者少走一些弯路.所以俄然神经恍忽.决意写下此文章.仅供PHP初学者参考.若有毛病.还望指出.不甚感谢.
PHP实际上是一种很复杂易学的言语.假如要精晓PHP多则三年.少则一年就足够了.然而为何三年以后咱们照样是菜鸟?
不晓得从甚么入手下手.进修PHP咱们不能不进修数据库.进修架构.进修面向对象.进修前端.进修linux.进修协定乃至美工等直接招致了如今PHPer都是最累的一种法式员.
最累就不算甚么了.常常PHP会被以为是上等的法式.拿着最初级的薪水.却要把握web方面几近全体的常识.这其实是不公允.
可喜的是 咱们逐步在国际看到了改变.国际愈来愈多的公司从Java或C#等转到了PHP.所以列位PHPer必定要有本人的妄想.你们城市很牛B的.请深信.
扯远了.回到我要说的重点上.上面几个成绩包括着我碰到的成绩.或许我说的纷歧定对或你纷歧定赞同我的意见.非常情愿承受你的定见.总之咱们只是想让PHPer都雄起:-)
1.编码的成绩
这不但是PHP..只需是法式上.就会碰到.最少我和我身旁的人都碰到了.并且在Web方面.常常编码成绩更长短常难处理.十分难调试.有时分法式出了稀里糊涂的成绩,很难想到是编码出了成绩等等.
这些成绩老是困扰着咱们.所以我建议PHP初学者.必定要编码一致.而且激烈建议一致为UTF-8.中文不建议利用GBK或GB2312等.由于在AJAX中传输的时分是不熟悉这类编码的.
假如要一致编码,就要在编码能够呈现的任何中央注重一下.

1) header头的编码
团体建议在你的PHP中都应当加高低面这句话(特别header除外)
复制代码 代码以下:
header("Content-type: text/html;charset=utf-8");

如许可以免一些成绩.好比咱们可以看到有些网站submit后就是一个alert然后跳转.然而他们没有设置编码.假如他的编码跟阅读器的默许编码纷歧致.就会呈现乱码了.
你是纯真的HTML.必定要记得把meta的编码标签放到title标签后面. 假如你不睬解就记住把编码的信息放到head标签的第一行就能够了.终究的后果是如许的
复制代码 代码以下:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
...

2) 文件的编码
咱们保留文件的时分,选择编码必定要一致.假如依照下面的.咱们就应当选择UTF-8.
普通的编纂器都有此文件的编码信息.假如你发明不是UTF-8.请即刻更改.
好比咱们在Dreamweaver中翻开了一个模板文件.发明右下角显示 GB2312(简体中文).此时不要做任何更改.即刻CTRL+J 然后选择编码更改成UTF-8形式并保留.
文件的编码纷歧定是PHP文件的.也得包管你的JavaScript文件与CSS文件都为UTF-8编码.
别的还有一个主要的一点.就是BOM..这个东东PHP是不太接待的.所以咱们在保留的时分要选择UTF-8无BOM格局.假如你用的编纂器是UE.那末请你侧重注重这一点.
3) 数据库的编码
这个我就不想多说了.网上有太多的文章.假如你是MySQL记得每次毗连落后行SET NAMES = ‘utf8′就能够了.而且谁人utf8两头是没有横线的.
2.MVC的成绩
法式员实际下去说应当是个完善主义者.他们不但想着把法式写的运转就能够了.并且还要优雅.
然而话说回来.把法式依照MVC做了今后咱们的代码就优雅了吗? 谜底固然是不是定的.
进修架构是一个了解的进程.当你真正体味到这个架构的优点的时分.才会了解其真实的寄义.切勿自觉.
有时分咱们会做如许的盘算.用这个月的工夫去进修MVC.好吧.我想你应当如许去做.你学会给本人定方针了.
然而一个月后咱们或许其实不能真实的了解MVC..然而最少咱们会依据他的形式他的根基.换句话说或许咱们没有学会葵花宝典.然而咱们应当会用辟邪剑法了.
3.面向对象的成绩
关于PHP面向对象的成绩.一向都扳缠不清.有的人不感觉PHP面向对象是个好的器材.有的人乃至不以为面向对象是个好的玩意,好比Linus.
咱们不用去纠缠这个器材究竟好欠好.最少咱们应当晓得从面向对象出生到如今.经由了这么多年的演化.应用到各类项目乃至言语中.咱们有来由信任存期近有其事理.
理论是查验真谛的独一尺度.这么多年面向对象更加展情势越好.看来咱们进修就变得是种必需了.
与一些架构的常识相似.面向对象也不是那末勤学的.面向对象是种理念.然而详细到某种言语的时分.其意义也会产生一些奇妙的变更.
PHP的面向对象很天真.再加上其独有的魔术办法.会培养出一种出格情势的面向对象.或许这跟你平常看Java的面向对象不太一样.
纷歧定把你需求的办法放到一个类中就是面向对象.当你真正体味到面向对象给你的编码带来快捷.带来便利.你就对面向对象有更深的一层了解了.
正所谓欲速则不达.切勿心急.你想几天以内了解绝对论那地道是扯淡.
4.算法的成绩
仿佛PHP与算法老是相距甚远的.PHP大多半算法都是基于数组完成的.而咱们又晓得PHP的数组的特征就注定当数组变得十分大的时分.效力会直线下落.
其实PHP就是个做网站的.人人不要也不用给她带甚么高帽子.在Web方面特别是在PHP所办事的前真个实践情形下会触及到算法的中央会十分少.
PHP的算法面试题不过就是对数组或对字符串的操作..动动头脑加上手册.那根基就没成绩了.
那你或许会问.我想进修PHP.那我还进修算法吗?
我感觉你需求学.而且更需求学数据布局.这门作业就像是一门内功.会在潜移默化中影响你的编码.
这时候候再共同上咱们后面的辟邪剑法.祝贺你 你已学会葵花宝典了!
5.框架的成绩
PHP的框架是各类言语中最多的.用不必框架.选甚么框架这又成为一个争议的话题..
我的建议长短常保举进修最少一款框架.这可以加深你对PHP的熟悉.咱们进修框架不是说要学这个框架怎样用.怎样做项目.
咱们要去看它的源码.看看他是怎样完成的.这时候候你就能够选择本人开辟一个小型的框架.不求做的多好.不求他人几何项目去应用.
咱们只是为了进修罢了.
6.JavaScript的成绩
可以说我看过这么多言语.最奇异就莫过于JavaScript了.平常Java一向传播鼓吹本人一切皆对象.其实我更感觉JavaScript才是一切皆对象.
JavaScript勤学吗? 勤学!其其实平常Web应用时分.普通的JavaScript操作就是DOM操作.
JavaScript难学吗? 难学!假如咱们被其他言语的面向对象的思惟束厄局促了.就很难了解JavaScript的面向对象.而且JavaScript外面概念也十分多.
prototype arguments call apply callee caller 闭包等概念就让咱们手足无措.再加上诡异的JavaScript的代码作风与其难调试的特点直接招致咱们这些菜鸟避而远之.
已经我转发过一段完成document.ready的代码.其诡异水平不能不信服.
团体感觉看一些JavaScript框架的源码就是最好的进修办法.已经在写我的PHP框架的时分.因为利用了一致进口+本人界说的URL划定规矩.所以再利用通俗属性为get的form的时分就会获得不到参数.
这时候候我就想到了jQuery.form中的formSerialize办法.摘选出来并做了一些修正.就能够拿来利用了.
7.CSS成绩
我之所与把CSS跟JavaScript分隔来讲.我感觉CSS的进修更有特色.
其实要我说CSS是最复杂的器材了.咱们只是晓得了一些根基的CSS属性.写页面相对不成成绩.
CSS的次要特点在于必需下手.你看N本CSS的书不照实际下手去写一个页面.
CSS别的一个特色就是很多试.或许这个属性不克不及到达你的后果.那你就换一个.这也是最笨最无效的举措:-)
固然 这只是低级CSS的请求. 会了这些以后 咱们还得兼容阅读器. 其实这个也不难 不过就是几个阅读器同时开着一个属性一个属性的试.
也能够熟记一些hack 好比IE6熟悉_ IE都熟悉*等.假如你感觉如许写CSS不敷尺度.那末把hack放到分歧的css文件中.好比ie6的就叫ie6.css
然后再页面上用上面的代码就能够了.
复制代码 代码以下:
<!--[if lt IE 6]>
<link href="css/ie6.css" rel="stylesheet" type="text/css" />
<![endif]-->

更初级确当然是用户的体验与设计了.这个我也不懂就不说了@_@ 但愿达人增补.
8.linux的成绩
团体激烈建议每人的电脑上都装置一个linux体系.假如你感觉太折腾 可以选择wubi体例装置Ubuntu.关于懒人这个是最复杂无效的办法了.
你无聊的时分可以下载一份PHP源码本人编译下尝尝.切忌apt-get.由于常常办事器版本不是rhel就是centos.那边是没有这个号令的.
并且apt-get到的常常不是最新的版本.而且又不克不及本人定制.
linux总会呈现如许在世那样稀里糊涂的成绩.好比情况略微纷歧样就编译欠亨过.办事起不来.
这时候候不要焦急.看毛病提醒 看日记.Google下本人测验考试处理.
编译完不要感觉就完了 尝尝分歧的设置装备摆设.并且修正一下源码再编译尝尝.
好比咱们下载了一份nginx的源码.然后修正下header优等一些中央. 就能够编译一份属于本人的HTTP Web Server了.
固然 你假如叫BWS或GWS也行:-)
还有个成绩 linux需求背号令吗? 这个是无可厚非的. 熟记一些经常使用的号令可以进步速度.这点我需求反思.常常一些经常使用的号令还需求看下参数..
别的一个就是Shell的成绩. Shell其实不难.然而语法在我看来对照丑恶@_@. 看看wiki就能够进修泰半了..次要还得是接洽. 咱们可以看到一个景象.一些公司在雇用初级PHPer的时分这条也列为必需前提了.
其实网上linux的材料十分多. 大多半你碰到的成绩他人城市碰到.所以擅长用Google. 而且熟读英语.
9.言语的成绩
这个的成绩就太多口水战了.终究谁也没有克服谁.咱们不用去介入这些无聊的工作.这些都是年老粪青要做的.
你再牛B你有Linus牛B吗? 他喷C++的喷了这么多年.C++怎样了?
所以咱们不用纠缠这些.做好本人做的就OK了.
既然你选择了PHP.就不要犹疑.
或许咱们在做项目标时分PHP显得不敷用了.那咱们可以用Java或C来做个两头件.这又未尝不成.
一种言语发扬她的最大最用才是真谛.
10.立场的成绩
立场必定要狂妄自大. 这是作为一个法式员应当有的美德.切勿自我收缩.
你学的越多 你就会发明本人缺乏就越多.
等你牛B了你可以说一些傲慢的话.然而如今咱们都不牛B.最少假如你看到我写的这篇文章.你应当还不太牛B. 我说了这篇文章是面向初学者的:-)
11.女人的成绩
呃..这个本人处理吧@_@
刚开始因为习惯于ASP格式的写法,总是在这些方面出现问题,自己还总是找不到问题所在,这就提醒了自己,在写代码的时候一定要认真,不能粗心地老是少个“;”或者字母大小写不分,要不然很可能找半天都找不到错误。
冷月葬花魂 该用户已被删除
沙发
 楼主| 发表于 2015-2-4 06:04:18 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
活着的死人 该用户已被删除
板凳
发表于 2015-2-9 03:46:16 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
再见西城 该用户已被删除
地板
发表于 2015-2-26 14:34:03 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
海妖 该用户已被删除
5#
发表于 2015-2-27 06:39:38 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
若相依 该用户已被删除
6#
发表于 2015-3-1 21:23:47 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
莫相离 该用户已被删除
7#
发表于 2015-3-1 23:46:56 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
只想知道 该用户已被删除
8#
发表于 2015-3-7 10:21:37 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
谁可相欹 该用户已被删除
9#
发表于 2015-3-19 14:14:13 | 只看该作者
爱上php,他也会爱上你。
admin 该用户已被删除
10#
发表于 2015-3-26 18:45:41 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
爱飞 该用户已被删除
11#
发表于 2015-3-27 21:11:10 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
第二个灵魂 该用户已被删除
12#
发表于 2015-3-31 17:56:48 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
不帅 该用户已被删除
13#
发表于 2015-4-2 14:42:18 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
愤怒的大鸟 该用户已被删除
14#
发表于 2015-4-17 15:54:51 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
灵魂腐蚀 该用户已被删除
15#
发表于 2015-4-24 00:42:44 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
小女巫 该用户已被删除
16#
发表于 2015-4-26 07:10:42 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
金色的骷髅 该用户已被删除
17#
发表于 2015-6-14 14:02:40 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
简单生活 该用户已被删除
18#
发表于 2015-6-15 13:53:15 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
老尸 该用户已被删除
19#
发表于 2015-7-1 03:04:42 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 16:35

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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