web1.0时代:所有的代码都是在浏览器端执行的静态脚本,用户请求的也都是服务器上事先已经存在的静态网页,用户和服务器之间不能进行任何的交互!(不需要数据库的支持)

web2.0时代:用户和服务器之间实现交互(对话),PHP脚本需要和数据库进行交互,能够处理用户的相关的复杂的业务逻辑,以后的网页将越来越“软件化”

web3.0时代:物联网、云计算和大数据的时代

PHP的发展史

PHP的原始含义:Personal Home Page  个人主页

最开始是加拿大的一哥们,开发了一个在线脚本工具,用来记录有多少人访问过他的在线简历,很受欢迎,于是他就开始开发自己的工具集!

PHP现在的含义:Hypetext Perprocessor 超文本预处理语言

说明了PHP是预先在服务器上执行的语言(工作在服务器端),然后再把执行的结果发送给浏览器

PHP的功能与特点

  • PHP主要是用来做web开发,但是PHP也可能开发桌面软件(应用软件),但是不常用
  • PHP是开源自由软件,能够在所有的操作平台上稳定的运行
  • PHP入门比较简单,语法类似于C语言(PHP本身就是C语言写的),同时支持面向过程和面向对象编程
  • PHP相对来说还很“年轻”,目前还在不断的完善和发展之中,比较有“生命力”
  • PHP工作在相应的平台解释器上面,相对来说消耗的系统资源很少
  • PHP支持多种主流的数据库,比如Mssql、Mysql、SQL Server、oracle等,只不过和Mysql是“黄金搭档”

web服务的发展历程

对等网模式

没有专门的客户端,也没有专门的服务器!

优点:简单快捷

缺点:不能提供可靠的服务

C/S模式

Client/Server,也就是客户端/服务器端模式,人为的分开了客户端(专门“享受”服务)和服务器(专门“提供”服务)!

主/从 服务器,其中从服务器也叫作镜像服务器!

特点:客户端和服务器端各自安装不同的软件,不同的服务有不同的客户端软件

优点:提供可靠的web服务

B/S模式

Browser/Server,也就是浏览器/服务器模式,由C/S模式发展而来,也可以说B/S模式其实就是一种特殊的C/S模式,相当于把C/S模式中所有的客户端都变成了浏览器而已!

比如:页游(网页游戏)

web开发的核心是B/S模式!

我们今天的主要任务就是搭建一个web服务器环境,但是浏览器端(B)不需要我们搭建,我们只需要搭建服务器软件就行了!

两个问题:

集成环境是什么?

集成环境,就是把搭建一个web服务器所需要的所有的组件(apache、mysql、php等)人为的组合到一起!常见的集成环境有:wamp(windows、apache、mysql、php)、Lamp、xamp、PHPStudy等等

为什么我们不建议采用集成环境?

  • 我们不知道apache、mysql、php等为什么要组合到一起以及如何组合到一起(对于专业人员很重要)
  • 在真实的开发中,不一定非要使用apache(比如还有IIS),也不一定非要使用mysql,所以,我们必须了解其中的原理!
  • 集成环境都属于第三方软件,不一定安全!

PHP的发展史,功能与特点的更多相关文章

  1. 【PHP发展史】PHP5.2 到 PHP5.6 中新增的功能详解

    截至目前(2014.2), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已经不在维护的 PHP5.2, 其余的一半用户在使用 PHP5.3. 因为 PHP 那“集百家之长”的 ...

  2. Python学习笔记—Python基础1 介绍、发展史、安装、基本语法

    第一周学习笔记: 一.Python介绍      1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...

  3. CSS3_概述、发展史、模块介绍、与浏览器之间的关系

    一.CSS3概述和CSS3的发展史: 1.css3概述: CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大的新功能.    目前主流浏览器chrome.safari. ...

  4. IOS中调用系统的电话、短信、邮件、浏览功能

    iOS开发系列--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook系统服务开发汇总 2015-01-13 09:16 by KenshinCui, 26990 阅读, 35 评 ...

  5. 一. JVM发展史,运行时数据区域,四大引用

    一.JVM的出现 JVM将字节码解释成不同os下的机器指令,有了jvm,java语言在不同平台上运行时不需要重新编译 虚拟机发展史 (1)Sun Classic classic jvm要么采用纯解释器 ...

  6. 安卓发展史以及安卓和苹果对比PPT

    此PPT由我们小组协力完成,介绍了Android的发展史以及android与苹果的一些比较.概述了android发展至今的一系列版本,功能的日益完善,它的强大性,灵活性,公开性使其拥有吸引客服的绝大魅 ...

  7. 苹果iOS手机系统诊断功能是后门吗?

    7月20日,美国知名苹果iOS手机系统侦破专家扎德尔斯基在2014年世界黑客大会(HOPE/X)用幻灯片讲演揭露了苹果手机存在系统级"后门". 为此,7月23日.苹果公司马上做出回 ...

  8. jQuery的发展史

    jQuery的发展史,你知道吗? 每天多学一点知识,就少写一行代码2006年1月,jQuery的第一个版本面世,至今已经有6年多了(注:这个时间点是截止至出书时间).虽然过了这么久,但它依然以其简洁. ...

  9. Day2 - Linux发展史

    第1章 Linux发展史 1.1 什么是操作系统 操作系统是人与计算机硬件的一个中介. 1.2 操作系统组成 操作系统类似与鸡蛋 蛋壳--------->系统中各种各样的软件 蛋清------- ...

随机推荐

  1. 【转】iOS学习笔记(十五)——数据库操作(SQLite)

    SQLite (http://www.sqlite.org/docs.html) 是一个轻量级的关系数据库.SQLite最初的设计目标是用于嵌入式系统,它占用资源非常少,在嵌入式设备中,只需要几百K的 ...

  2. keycode对应表

    keycode对应表 keycode    8 = BackSpace 回格keycode    9 = Tab keycode   12 = Clearkeycode   13 = Enter 回车 ...

  3. python_82_标准库_random模块

    import random print(help(random.random)) #随机整数 print(random.randint(1,7))#生成一个[1, 7]的随机整数 print(rand ...

  4. 爬虫2_python2

    # -*- coding: UTF-8 -*- # 正则表达式模块 import re # 获取路径模块 import urllib #时间模块 import time def getHtml(url ...

  5. linux - centos7 开放防火墙端口的新方式

    CentOS 升级到7之后,发现无法使用iptables控制Linuxs的端口, google之后发现Centos 7使用firewalld代替了原来的iptables. 下面记录如何使用firewa ...

  6. 伪基站SSRP

    伪基站的基本构成包括一台发射主机.一台笔记本电脑.一根天线.一部手机和电源.其中,手机用来测得频点,即某个区域运营商正规基站的频点,然后再把频点和短信内容输入到电脑安装好的程序,通过发射主机和天线进行 ...

  7. 使用Electron开发PC客户端

    最近公司要求开发一个PC客户端,要求不能使用.NET开发(为了不让用户安装.net framework),所以就选择了Electron(随口听别人说了一句,之前从来没有接触过).目前项目要完毕了,所以 ...

  8. CentOS 编译安装PHP5.6(7以上也通用)

    由于公司有新服务器需要构建一套LNMP平台,且需要编译安装各个部件,所以记录下此文章. 这是安装PHP涉及到的软件包(可以自行决定使用哪个版本): ├── libiconv-1.15.tar.gz ├ ...

  9. 【启发式拆分】bzoj5200: [NWERC2017]Factor-Free Tree

    和bzoj4059: [Cerc2012]Non-boring sequences非常相似 Description 一棵Factor-Free Tree是指一棵有根二叉树,每个点包含一个正整数权值,且 ...

  10. Scrapy+Chromium+代理+selenium

    上周说到scrapy的基本入门.这周来写写其中遇到的代理和js渲染的坑. js渲染 js是爬虫中毕竟麻烦处理的一块.通常的解决办法是通过抓包,然后查看request信息,接着捕获ajax返回的消息.但 ...