细说php怎么样?细说php这本书好不好

 更新时间:2017年7月6日 23:50  点击:1304
有同学问《细说php》这本书怎么样,适不适合新手学习。小编分享了一篇关于《细说php》的心得体会,大家可以参考一下。

《细说PHP(第2版)》共六个部分,分为30个章节,每一章都是PHP独立知识点的总结。内容涵盖了动态网站开发的前台技术(HTML+CSS)、PHP编程语言的语法、PHP的常用功能模块和实用技巧、MySQL数据库的设计与应用、PHP面向对象的程序设计思想、数据库抽象层PDO、Smarty模板技术、Web开发的设计模式、自定义框架BroPHP、Web项目开发整个流程等目前PHP开发中最主流的技术。每一章中都有大量的实用示例,以及详尽的注释,加速读者的理解和学习,也为每章的技术点设置了大量的自测试题。最后以一个比较完整的、采用面向对象思想,以及通过MVC模式设计,并结合Smarty模板,基于BroPHP框架的CMS系统为案例,详细介绍了Web系统开发从设计到部署的各个细节,便于更好地进行开发实践。

这书作者写了一年半,花了四天时间学完。几年前曾经读过别的php教材,后来没参与这类的项目就荒废了,这本算是复习。本书内容全面,很详细,虽然刚看过鸟哥的书,比较喜欢那种轻松近人的风格,不过这本书中规中矩读着也不错。

虽然各种错别字,字符错误比较多。但是对于完全新手来说入门算不错了。该涉及的基本都有。顺便学习下种种基本概念。代码可以拿来当改错题做。 看完有哪些章节不理解的可以看下视频教程或网上单独搜下。 如果有web开发经验的直接看php手册即可。

学php怎么样?对于学php不知所措的同学可以看看这篇文章,对你一定会有所帮助

PHP主要以脚本语言为主的,所以入门还是比较简单的。PHP主要用来做网站开发,许多小型网站都用PHP开发,PHP是开源的,这是使得PHP经久不衰的原因。在电商、社区等方面,PHP具备非常成熟的开源代码和模板,因此使得PHP应用极为广泛。

相对于其他编程语言来说,发展前景比较乐观,但不如Java稳定。

PHP语言入门不难,学会用是很容易,入门后可以看下thinkphp这个框架,挺好用也挺多人用的。祝大家自学成才!

1)单纯的学PHP肯定不行,这里不仅仅局限于PHP,前端也要涉及,例如div+css+js,不是说要精通,但是一定要熟悉了解,至少对于JS这块jquery的熟练运用是一定要有的。还有服务器方面,apache,nginx神马的!

想当初我前端和PHP一起学习的时候,自己写了一个webQQ(大三自己一个人),界面,通信方面都是自己实现的,花了我三个月,不过当时没有考虑到大数据以及性能的问题,所以干程序这行一定要有钻研精神。
下面这个就是我写的webQQ,献丑:

2)要说怎么学PHP,有人说视频,有人说看书,其实都是很好的选择,我个人开始学习的时候是看视频,毕竟大多的视频教程都是入门级的,到后面视频的教程满足不了你的时候,你就可以去看看一些有深度的书籍了,实践出真知。

3)Linux环境下的开发是必不可少的。要学习Linux,鸟哥的linux私房菜的书籍,肯定是要看过的啦!等真正会用linux的时候,你就明白linux有多有趣了!尤其是在操作命令不需要鼠标的时候,别提多爽了!

4)数据库,不用说肯定是mysql最熟悉了,curd操作,查询优化这个是最基本的了解和掌握。

tip:关于有人说php源码的问题,我刚开始学的时候,有些人会建议我去读php的源代码,对于这一点我当时真的去读了,但是结果显而易见,你读不懂,也许你学过C(我本身是学软件工程),但是如果没有一些架构,技术钻研的沉淀,你还是看不懂,而且你想想全中国那么多PHP的工程师,能有几个是看完PHP源码的呢?就算是新浪微博的那个惠新宸也许也没看完,做什么事情不要钻牛角尖为好!

小编推荐的这篇文章介绍了php方法的重写,有兴趣的同学可以参考一下,非常有用。

方法的重写/方法的覆盖(override)
当一个父类知道所有的子类都有一个方法,但是父类不能确定该方法究竟如何写,

可以让子类去覆盖这个方法,具体用法如下:

  •  代码如下复制代码
    • <?php  

    •  //抽象一个Animal类  

    •        class Animal{  

    •               public $name;  

    •               protected $price;  

    •               function cry(){  

    •                      echo "不知道动物怎么叫..";  

    •                      echo "
      ";  

    •               }  

    •        }  

    •        class Dog extends Animal{  

    •               //覆盖父类中的 cry()方法  

    •                 function cry(){  

    •                      echo "小狗汪汪叫..";  

    •                      echo "
      ";  

    •               }  

    •        }  

    •        class Pig extends Animal{  

    •               //覆盖父类中的 cry()方法

    •               function cry(){  

    •                      echo "小猪哼哼叫..";  

    •                      echo "
      ";  

    •               }  

    •        }  

    •        //创建一个只狗  

    •        $animal=new Animal();  

    •        $animal->cry();  

    •        $dog1=new Dog();  

    •        $dog1->cry();  

    •        $pig1=new Pig();  

    •        $pig1->cry();  

    • ?> 

关于方法重写细节讨论:
方法重写就是子类有一个方法,和父类的某个方法的名称、参数个数一样,那么我们就说子类的这个方法重写了父类的那个方法。
1. 要实现重写,要求 子类的那个方法的名字和参数个数一摸一样,但是并不要求参数的名称一样.
2. 如果子类要去调用父类的某个方法(public / protected) 则可以使用 parent::方法名(参数..) , 父类名::方法名(参数...)
3. 在实现方法覆盖的时候,访问修饰符可以不一样       //但是必须满足: 子类的访问范围>=父类的访问范围
注意:当父类的函数为私有(private)类型时,不能覆盖,因为父类为私有该函数根本不能继承。

 代码如下复制代码
// 多态体现在什么地方?
// class Animal{
//               public function cry(){
//                      echo '动物叫唤..';
//               }
//        }
//        class Cat extends Animal{
//               public  function cry(){
//                      echo "abc";
//               }
//        }
//        $cat1=new Cat();
//        $cat1->cry();


// 当子类没有覆盖父类的方法则 $cat1->cry() 调用的是父类,当 子类覆盖了父类的方法,则调用自己的cry()


[!--infotagslink--]

相关文章

  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
  • php微信公众账号开发之五个坑(二)

    这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
  • PHP如何通过date() 函数格式化显示时间

    这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

    首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31
  • golang与php实现计算两个经纬度之间距离的方法

    这篇文章主要介绍了golang与php实现计算两个经纬度之间距离的方法,结合实例形式对比分析了Go语言与php进行经纬度计算的相关数学运算技巧,需要的朋友可以参考下...2016-07-29
  • PHP正则表达式过滤html标签属性(DEMO)

    这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06
  • php构造方法中析构方法在继承中的表现

    这篇文章主要为大家详细介绍了php构造方法中析构方法在继承中的表现,感兴趣的小伙伴们可以参考一下...2016-04-15
  • PHP如何使用cURL实现Get和Post请求

    这篇文章主要介绍了PHP如何使用cURL实现Get和Post请求,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-07-11
  • PHP+jQuery+Ajax实现多图片上传效果

    今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15
  • thinkPHP中多维数组的遍历方法

    这篇文章主要介绍了thinkPHP中多维数组的遍历方法,以简单实例形式分析了thinkPHP中foreach语句的使用技巧,需要的朋友可以参考下...2016-01-12
  • PHP简单实现生成txt文件到指定目录的方法

    这篇文章主要介绍了PHP简单实现生成txt文件到指定目录的方法,简单对比分析了PHP中fwrite及file_put_contents等函数的使用方法,需要的朋友可以参考下...2016-04-28
  • php判断邮箱地址是否存在的方法

    这篇文章主要介绍了php判断邮箱地址是否存在的方法,php判断邮箱地址是否存在的方法有两种,感兴趣的朋友可以参考一下...2016-02-18
  • php图片添加文字水印实现代码

    这篇文章主要为大家详细介绍了php图片添加文字水印实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-03-17
  • thinkphp自定义权限管理之名称判断方法

    下面小编就为大家带来一篇thinkphp自定义权限管理之名称判断方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-04-03
  • php switch 与 if else 区别

    在php中switch是选择,if else也有同理,但是它们肯定是有区别的,那么我们来看看它们两者的区别在哪里呢,下面先看switch case语句吧。 switch($id){ case 1: ...2016-11-25