PHP概述

编译型语言&解释型语言

  • 编译型语言:编译型语言写的程序在被执行前,需要有一个专门的编译过程,把程序编译成机器语言的文件,比如exe文件。如果以后要运行,直接使用编译的结果便可,而不用再重新编译,因此一般来说执行效率比解释型语言要高。
  • 解释型语言:不用编译,需要专门的解释器来解释执行,每条语句都是执行时才翻译,因此程序每执行一次就需要翻译一次,效率较低。

弱类型语言

  • 弱类型语言是指在使用变量时,不需要做任何类型的声明,该语言即可根据变量的值自动判断变量类型。
  • 这也是PHP及其方便的一点,不过在某些特殊情况下,还是需要严格遵守变量类型的定义规范(比如商品价格)。

简介

  • PHP(Hypertext Preprocessor,超文本预处理器,追溯到最初应该叫Personal Home Page,个人主页 )是一种脚本语言,从本质上来说,也就是解释型语言,不需要编译,但需要有相应的脚本引擎来解释执行。
  • PHP是一种运行于后端服务器的脚本语言,开源且免费。可镶嵌于HTML页面中解析共存,动态创建输出内容,是构建网页最为省时简单的解析性脚本语言。自版本7发布之后,PHP的应用变得更加广泛。

各个版本

  • PHP4引入面向对象等等等
  • PHP5极大提高面向对象能力等等等。PHP 5.6 将会在 2018 停止安全更新
  • PHP 7.1 非常新,相较于 5.x 版本增加了强大的 新特性。PHP 引擎大部分被重写,PHP 的运行速度已经远远超越过去。

PHP运行原理

当用户代码输入给PHP内核去执行的时候, PHP内核会对PHP代码进行词法分析和语法分析, 词法分析是把PHP代码分割成一个个的“单元”(TOKEN), 语法分析则将这些“单元”转化为Zend Engine可执行的操作。 然后PHP内部的Zend Engine对这些操作进行顺次的执行。 Zend Engine是PHP内核的核心部分,负责最终操作的执行和结果的返回, 可以理解成为PHP内核中的“发动机”。


原理

关于PHP与JAVA的看法

JAVA有多种成熟的架构供选择,例如SSH框架。虽然PHP也有众多框架,但由于PHP的语言特性更偏向面向过程,同时框架又和面向对象编程思想有很强的联系,因此PHP在框架这条路上与JAVA相去甚远。简单的系统设计PHP完全可以胜任,而复杂的系统设计,意味着后端代码必须模块化,要高内聚/低耦合以及代码重用,JAVA更适合这样的场景。
  这里扯一下PHP与面向对象不那么友好,比如不支持方法重载、操作符重载、多重继承(有人说通过递归实现,会扛不住,这里Mark一下,记住这个点)。不过PHP引入了trait,与多重继承相似的一种代码复用机制。

trait

Trait 和 Class 相似,但仅仅旨在用细粒度和一致的方式来组合功能。 无法通过 trait 自身来实例化。它为传统继承增加了水平特性的组合;也就是说,应用的几个 Class 之间不需要继承。
  从基类继承的成员会被 trait 插入的成员所覆盖。优先顺序是来自当前类的成员覆盖了 trait 的方法,而 trait 则覆盖了被继承的方法。

<?php
trait HelloWorld {
    public function sayHello() {
        echo 'Hello World!';
    }
}

class TheWorldIsNotEnough {
    use HelloWorld;
    public function sayHello() {
        echo 'Hello Universe!';
    }
}

$o = new TheWorldIsNotEnough();
$o->sayHello();
?>

output:
Hello Universe!

近期想回顾一下基础,发现自己对很多东西没有了解透彻,查看他人的博客,然后瞎写了上面一点东西,如有错漏,欢迎指出。
参考:http://www.jianshu.com/p/45a99aedc7ab
http://www.epnz.com/?p=art&id=914
http://www.jianshu.com/p/90257a757884

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容

  • window下安装方法Appserv 官网http://www.appservnetwork.com安装成功后,到...
    深沉的简单阅读 564评论 0 0
  • 转自陈明乾的博客,可能有一定更新。 转原文声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、...
    C86guli阅读 4,603评论 6 72
  • 周六,按平常早起给女儿准备了早餐,因昨天睡得晚,看着点叫她起床了,还好没有赖床马上洗漱就吃饭,准备书去辅导班。今...
    金慧恩妈妈阅读 146评论 0 0
  • 笔耕不辍之任何年龄都不晚 做健康直播三个多月了,看到在直播时很多朋友问的问题很有意思。其中有人会问:我五十多了,六...
    理疗瑜伽邵阅读 192评论 0 0
  • “我累了,做回朋友吧,叶子。”冬日暖阳,站在窗前,在听了近九分钟沉默后,电话那头传来嘟嘟声。窗外,原来停止不前的车...
    木楚阅读 713评论 5 8