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. ES6, Angular,React和ABAP中的String Template(字符串模板)

    String Template(字符串模板)在很多编程语言和框架中都支持,是一个很有用的特性.本文将Jerry工作中使用到的String Template的特性做一个总结. ES6 阮一峰老师有一个专 ...

  2. Leetcode重点 250题-前400 题

    删除不常考,面试低频出现题目 删除重复代码题目(例:链表反转206题,代码在234题出现过) 删除过于简单题目(例:100题:Same Tree) 删除题意不同,代码基本相同题目(例:136 & ...

  3. VS2013常用快捷键[转] 注释 Ctrl+K - C 和 k - u

    VS2013常用快捷键你敢不会?   F1 帮助文档 F5 运行 F12 跳转到定义 F11 单步调试 Shift+F5 停止调试 Ctrl+滚轮 放大缩小当前视图 Ctrl+L 删除当前行 Ctrl ...

  4. polygon 画图

    cityscape数据集,我现在想根据json文件中的polygon画出整个road的区域,这是运行的脚本.这个文件必须使用coco的pythonAPI的包,把这个脚本放在pythonAPI文件夹下就 ...

  5. 使用struts2实现文件上传与下载功能

    这个问题做了两天,在网上找了很多例子,但是还有一些功能没有实现,暂时先把代码贴出来,以后在做这方面的功能时在修改 文件上传: 一开始我在网上找到基于servlet+jsp环境写的文件上传,但是在将页面 ...

  6. vuePress的使用

    今天来玩一玩vuePress的使用,用markdown来编辑一个页面网站,这里谈论到了简单使用,细节可以去官网上去查看 开始安装 项目依赖 // package.json { "name&q ...

  7. 如何在 JavaScript 中更好地使用数组

    使用 Array.includes 替代 Array.indexOf “如果需要在数组中查找某个元素,请使用 Array.indexOf.” 我记得在我学习 JavaScript 的课程中有类似的这么 ...

  8. C++ string头文件

    转载自https://blog.csdn.net/superna666/article/details/52809007/ 作者 zhenzhenjiajia888 标准c++中string类函数介绍 ...

  9. 共享服务-FTP基础(二)

    续接上一篇 使用pam(Pluggable Authentication Modules)完成用户认证 pam_service_name=vsftpd pam配置文件:/etc/pam.d/vsftp ...

  10. C#基础-循环语句

    while语句 int i = 1,sum=0; while (i <= 100) { sum += i; i++; } Console.WriteLine(sum); do···while语句 ...