第1章  初识PHP

当前网络技术发展日新月异,各种基于服务端创建动态网站的脚本语言更是层出不穷。其中PHP以其简单、易用、可移植性强等特点,在众多的动态网站语言技术中独树一帜。那么到底什么是PHP,如何使用PHP?本章将来回答这些问题。通过本章的学习,将使读者对PHP有一个大致的了解,并将学会如何把PHP代码加入普通Web页中。

1.1  关于静态网页与动态网页

目前网上的网页有静态网页与动态网页两种形式。在讲这两种网页之前,先了解一下网络构成中的客户机(Client)与服务器(Server)。服务器是安装有服务器软件并且可以向客户机提供诸如网页浏览、数据库查询等服务的设备。而客户机则与之相反,它通过客户端软件如网页浏览器从服务器上获得如网页浏览、软件下载等服务。简单地讲,服务器就是服务提供者,而客户机则是服务获得者。

1.1.1  传统的静态网页HTML

静态网页的实现模式如图所示: 静态网页有以下几个特点:静态网页不能自动更新。静态网页的内容不随浏览用户、浏览时间等条件的变化而变化。静态网页一经发布,无论浏览者浏览与否,它都是实实在在存在的一个文件,都对应一个URL。用静态网页实现人机交互有相当大的局限性。

1.1.2  动态网页与传统网页的区别

与静态网页的实现方法不同,动态网页服务的实现过程如下:客户端向服务器提出申请,服务器根据用户请求,把动态网页内部的代码先在服务器上进行相应的处理,再把生成的结果发送给客户端。其模式如图所示:

1.1.2  动态网页与传统网页的区别

动态网页有以下几个特点:

动态网页在服务器端运行。

不同的人、不同时间、不同地点浏览同一个动态网页,根据代码处理结果不同,会返回不同的内容。

动态网页只有经客户浏览时才会返回一个完整的网页,而其本身并不是一个独立存在于服务器的网页文件。

与静态网页相比,动态网页更容易实现人机交互。

动态网页构建的网站维护起来比静态网页要容易。

1.2  关于PHP

上一节为读者介绍了静态网页与动态网页,而PHP就是动态网页技术中的一种。那么到底什么是PHP,它的发展历史是怎么样的呢?与其他动态网页技术相比,PHP都有些什么特点呢?本节将为读者来解答这些问题。

1.2.1  什么是PHP

早期有人将PHP解释为Personal Home Page,即个人主页。也有人将PHP称作:“PHP:Hypertext Preprocessor”。通俗地说,PHP是一种服务器端、跨平台、可以嵌入HTML的脚本语言。服务器端执行的特性标明了它是动态网页的一种。跨平台,则是指PHP不仅可以运行在Linux系统下同时也可以运行在UNIX或者Windows系统下。另外它还可以很简单地嵌入到普通的HTML页中,用户所要做的只是在普通HTML页中加入PHP代码即可。

1.2.2  PHP的发展历史

PHP最初在1994年由Rasmus Lerdorf进行开发。1995年中期又发布了PHP的第2个版本,定名为PHP/FI(Form Interpreter)。

1997年中开始了第三版的开发计划,开发小组加入了Zeev Suraski及Andi Gutmans,而第三版就定名为PHP  3.0。

2000年5月,PHP 4.0正式发布。它使用了Zend(Zeev+Andi)引擎,提供更高的性能。

2004年7月,PHP 5问世。PHP 5的诞生,使PHP编程进入了一个新时代。Zend  II引擎的采用,完备的对象模型、改进的语法设计。终使得PHP成为一个设计完备、真正具有面向对象能力的脚本语言。

1.2.3  PHP与其他CGI程序相比较

同样作为服务端编程语言,PHP与其他CGI程序如ASP.NET、JSP等相比较有其自身的特点,主要表现在以下几个方面:Web服务器支持方面。运行平台的支持。脚本语言不同。数据库支持不同。面向对象的支持不同。

1.3  第一个程序——HELLO WORLD!

<html>
<head>
<title>HELLO WORLD!</title>
</head>
<body>
<!--以上为普通HTML代码,以下为PHP代码-->
<?php
echo "HELLO WORLD!"; //用echo打印字符串
?>
<!--以上为PHP代码-->
</body>
</html>

1.3.1  页面中加入PHP代码

PHP是一种可嵌入的语言。也就是说,它可以很方便地加入到一般常见的HTML页中。用户请求PHP文件时,相关的PHP代码先在服务器端解释执行,生成新的HTML信息,再连同原有的HTML代码一起发送给用户。

1.3.2  PHP页中加入注释

PHP有三种注释:

单行注释:#,//
多行注释:/*some code*/

php教程|php基础知识的更多相关文章

  1. php基础教程-必备基础知识

    PHP 脚本在服务器上执行. 您应当具备的基础知识 在继续学习之前,您需要对下面的知识有基本的了解: HTML CSS JavaScript 如果您希望首先学习这些项目,请在我们的 首页 访问这些教程 ...

  2. redis 教程(一)-基础知识

    redis 简介 redis 是高性能的 key-value 数据库,读的速度是110000次/s,写的速度是81000次/s ,它以内存作为主存储 具有以下优点: 1. 支持数据的持久化,将内存中的 ...

  3. Java基础教程——网络基础知识

    参考阅读[中国互联网发展史]:https://zhuanlan.zhihu.com/p/61602252 协议 计算机网络中的通信必须有一些约定,这些约定称为"通信协议". 通信协 ...

  4. 菜鸟教程jsonp基础知识讲解

    jsonp是什么? Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据. 为什么我们从不同的 ...

  5. Python入门方法推荐,哪些基础知识必学?

    很多想入门的小伙伴还不知道Python应该怎么学,哪些知识必学,今天我们就来盘点一下. 01.入门方法推荐 总体来讲,找一本靠谱的书,由浅入深,边看边练. 网上的学习教程有很多,多到不知道如何选择.所 ...

  6. 【RL-TCPnet网络教程】第41章 HTTP超文本传输协议基础知识

    第41章      HTTP超文本传输协议基础知识 本章节为大家讲解HTTP(HyperText Transfer Protocol,超文本传输协议),从本章节开始,正式进入嵌入式Web的设计和学习. ...

  7. 【RL-TCPnet网络教程】第38章 TFTP简单文件传输基础知识

    第38章      TFTP简单文件传输基础知识 本章节为大家讲解TFTP(Trivial File Transfer Protocol,简单文件传输协议)的基础知识,方便后面章节的实战操作. (本章 ...

  8. 【RL-TCPnet网络教程】第2章 嵌入式网络协议栈基础知识

    第2章        嵌入式网络协议栈基础知识 本章教程为大家介绍嵌入式网络协议栈基础知识,本章先让大家有一个全面的认识,后面章节中会为大家逐一讲解用到的协议. 基础知识整理自百度百科,wiki百科等 ...

  9. 【RL-TCPnet网络教程】第35章 FTP文件传输协议基础知识

    第35章      FTP文件传输协议基础知识 本章节为大家讲解FTP(File Transfer Protocol,文件传输协议)的基础知识,方便后面章节的实战操作. (本章的知识点主要整理自网络) ...

随机推荐

  1. PHP定界符使用技巧

    为什么要使用定界符 : 因为PHP是一个Web编程语言,在编程过程中难免会遇到用echo来输出大段的html和javascript脚本的情况,如果用传统的输出方法——按字符串输出的话,肯定要有大量的转 ...

  2. Eclipse 安装 Maven 插件(图文解说)

    Help  --> 选择Eclipse Marketplace -->  在 Find 中输入 Maven integration for Eclipse  --> 回车搜索

  3. springMVC4 注解配置实例

    结构: maven配置: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:// ...

  4. [转]定位占用oracle数据库cpu过高的sql

    今天在吃饭的时候我的朋友的数据库出现了问题,cpu占用率为97%,当我看到这个问题的时候我就想到了或许是sql导致的此问题,由于忍不住吃饭,暂时没有帮他看这个问题,这是我饭后自己模拟的故障,进行的分析 ...

  5. ZXing二维码生成在Unity3D中出错,数组超出界限的解决办法

    错误截图: IndexOutOfRangeException: Array index is out of range.ZXing.Color32Renderer.Render (ZXing.Comm ...

  6. Java虚拟机

    虚拟机每次方法的调用和返回都伴随着栈帧的入栈和出栈,而每个栈帧都包含一个指向运行时常量池中该栈帧所属方法的引用(表明该栈帧执行的是哪个方法),持有这个引用是为了支持方法调用中的动态连接.这些符号引用中 ...

  7. SQL初步知识点

    varchar(n) 长度为 n 个字节的可变长度且非 Unicode 的字符数据.n 必须是一个介于 1 和 8,000 之间的数值.存储大小为输入数据的字节的实际长度,而不是 n 个字节. nva ...

  8. SQL 2008升级SQL 2008 R2完全教程或者10.00.1600升级10.50.1600

    http://blog.csdn.net/feng19821209/article/details/8571571 SQL 2008升级SQL 2008 R2完全教程或者10.00.1600升级10. ...

  9. CoolPlist 帧动画自动生成工具

    工具英文名称:CoolPlist作者: 陈前帆 thinkingMan | sonny 邮箱: 625936034@qq.com | chenqianfan1@163.com电话: 136704713 ...

  10. 转:隐马尔可夫模型(HMM)攻略

    隐马尔可夫模型 (Hidden Markov Model,HMM) 最初由 L. E. Baum 和其它一些学者发表在一系列的统计学论文中,随后在语言识别,自然语言处理以及生物信息等领域体现了很大的价 ...