PHP应用开发知识点基础

PHP概述

 PHP于1995年由Rasmus Lerdorf开发。经过二十多年的发展,PHP已经成为全球最受欢迎的脚本语言之一。作为一种面向对象的、完全跨平台的新型Web开发语言,无论从开发者角度还是经济角度考虑,PHP都是非常实用的。
 PHP已拥有几千万用户,并且还在吸引着越来越多的Web开发人员。全球5000万互联网网站中,有60%以上使用了PHP技术;国内80%以上的动态网站使用PHP开发;Alexa TOP 500中国网站中,有394家使用了PHP技术,比例为78.8%。

什么是PHP

 PHP(Hypertext Prepocessor)是一种通用开源脚本语言,利于学习,使用广泛,主要适用于Web开发领域。其独特的语法混合了C语言、Java语言和Perl语言的特点。它可以比CGI或者Perl更快速地执行动态网页。与其他编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多。

PHP的特点

PHP的特点主要包含以下几项:
1.开放源代码:可以得到几乎所有的PHP源代码。
2.免费性:和其他技术相比,PHP本身是免费的。
3.快捷性:程序开发快,能更有效地使用内存,可消耗相当好的系统资源,代码执行速度快。
4.嵌入于HTML:由于嵌入HTML,PHP相对其他语言更简单,实用性更强,更适合初学者。
5.跨平台性强:PHP可以运行在UNIX、Linux、Windows、Mac OS等几乎所有流行的操作系统下,并且支持Apache,IIS等多种Web服务器。
6.支持多种数据库:PHP支持多种主流与非主流的数据库,如MySQL,Informix,Oracle,Sybase,Microsoft SQL Server等。
7.安全性好:PHP是开源的,PHP源代码可以被每个人看到,代码在许多开发人员的手中进行了检测,同时它与Apache编译在一起的方式也可以让它具有灵活的安全设定。
8.可选择性:PHP可以采用面向过程和面向对象两种开发模式,并向下兼容,开发人员可以从所开发网站的规模和日后维护等多角度考虑,选择要采取的模式。
9.很好的移植性和扩展性:PHP可以运行在任何服务器上(不管是Windows还是Linux),属于自由软件,其源代码完全公开,任何程序员为PHP扩展附加功能都非常容易。

PHP的应用领域

在互联网高速发展的今天,PHP的应用领域非常广泛,主要包含以下几方面:
1.中小型网站的开发。
2.Web办公管理系统的开发
3.硬件管控软件的GUI(Graphical User Interface,图形用户接口)开发。
4.电子商务应用开发
5.Web应用程序开发
6.多媒体系统开发
7.企业级应用开发

PHP的基础语法

PHP语言基础

 PHP是一种创建动态交互站点的、强有力的服务器端脚本语言。PHP代码嵌入在HTML代码中,通过一定的标记来区分HTML代码、客户端和服务器端代码。

PHP文件格式

 PHP文件格式非常简单,可以通过任何文本编辑工具,如记事本、Dreamweaver等工具来编写PHP代码,最后将其保存为后缀为“.php”的文件即可。
 PHP文件无需编译即可运行,只要配置好运行环境,然后将PHP文件放在相应的发布目录中,就可以通过浏览器浏览文件了。

PHP语言标记

 由于PHP嵌入在HTML中,因此需要标记对来区分。通常情况下,可以用以下方式来标记PHP代码。
 1.<?php……?>;
 2.<?……?>;
 3.<不写入其他字符就会被隐藏script language=php>……<同理/script>;(忽视中文)
 4.<%……%>。
 当使用<?……?>将PHP代码嵌入到HTML文件中时,可能会与XML发生冲突。为了适应XML和其他编辑器,可在起始的问号后面加上“php”使PHP代码适应于XML分析器,如<?php……?>;也可以像其他脚本语言那样使用<“script language=php>?……<//script>”脚本语言;还可以使用<?……?>脚本标记,但由于这一脚本标记也为ASP语言所采用,所以尽量少使用该脚本标记。推荐使用<?php……?>脚本标记。

PHP语法和注释

 PHP语法主要借鉴C/C++,也部分参考了Java和Perl语言的语法。在PHP中,一般每句完整代码的后面都要加分号“;”。但对于控制语句,一般不用加分号“;”,如以下代码:

if(a>b)
 echo“a比b大”;

 其中的“if(a>b)”语句后面不需要加分号。如果控制语句下面有多行代码,则必须使用大括号“{……}”括起来,如下所示:

if(a>b)
{
 echo"a比b大”;
 echo“a大于b”;
}

 任何一种编程语言,都少不了对代码的注释。因为一个个好的应用程序源代码都有详细的注释。良好的注释对代码后期的维护和升级能够起到非常重要的作用。

 为PHP程序添加注释的方式非常灵活。可以使用C语言、C++语言或者是UNIX的Shell语言的注释方式,还可以混合使用。可以使用“//”或者“#”对单行代码进行注释,同时还可以通过“/……/”对大段代码进行注释。但是不能嵌套使用“*……**”注释符号,否则会出现编译错误。

PHP的数据类型

 PHP是一种类型比较弱的语言,就是说变量可以包含任意给定的数据类型,该类型取决于使用变量的上下文环境。在PHP中,可以直接为变量赋值,而不需要对其数据类型进行声明,如下所示:

$ str=“I like Monkey”; //表示$美元符str为字符串型
$ number=50; //表示$number为整型

 事实上,PHP中变量数据类型的定义是通过为变量赋值(初始化),由系统自动设定的。PHP支持8种原始类型(type),其中有4种标量类型,2种符合类型和2种特殊类型。

 标量数据类型包括boolean(布尔型)、string(字符串)、integer(整型)、float(浮点型,也称作double);符合数据类型包括array(数组)和object(对象);特殊数据类型包括resource(资源)和NULL(NULL)。下面分别介绍这些数据类型。

标量数据类型

标量数据类型即为绝大多数程序语言的基本数据类型,下面分别介绍。

1.布尔型(boolean)

 在所有PHP变量中,布尔型是最简单的变量。布尔变量保存一个true或false值。其中true或者false是PHP的内部关键字。只需要将true或者false赋值给某变量,即可将该变量设定为布尔型,如下所示:

$ var_bool=true;

  • 知识库
    美元符号$是变量的标识符,所有变量都以 $ 符号开头,无论是声明变量还是调用变量,都应使用$符号。

 true和false实际上代表数字1和0,因此true在输出时显示为1,false在输出时显示为0。当转换布尔型时,以下值被认为是false:

  1. 布尔值false;
  2. 整型值0(零);
  3. 浮点型值0.0(零);
  4. 空白字符串和字符串“0”;
  5. 没有成员变量的数组;
  6. 空值NULL。

 其他所有制都被认为是true。通常布尔型变量是应用在条件控制或循环控制语句的条件表达式中。

2.字符串型(string)

 字符串由一系列字符组成,其中每个字符等同于一个字节。字符串在每种编程语言中都有广泛的应用。在PHP中,定义字符串有以下三种方式。

1)单引号形式

定义一个字符串最简单的方法是用单引号把它括起来,如下所示:

$str=‘this is a simple string’;

 使用单引号表示字符串时,要表达一个单引号自身,需在它的前面加个反斜线“\”来进行转义。要表达一个反斜线自身,则用两个反斜线“\”。其他任何方式的反斜线都会被当成反斜线本身,也就是说如果想用其他转义序列,例如\r或者\n,并不代表任何特殊含义,就单纯是这两个字符本身。

  • 知识库
    在用单引号定义字符串类型的变量时,PHP不会将其按照变量进行处理,而是将其看做字符串。
2)双引号形式

双引号字符串的赋值方式如下:

$str=“这是双引号中的字符串”;

 如果字符串是用双引号(")定义,则支持更多种类的转义字符。例如:“\n”表示换行,“\r”表示回车,“\t”表示水平制表符,“\”表示显示双引号,“\”表示反斜线,“ \$”表示美元标记,显示一个$符号,否则会被当成变量。

 和单引号字符串一样,转义任何其他字符都会导致反斜线被显示出来。使用单引号和双引号定义字符串的区别是:在使用单引号时,程序不会首先去判断该字符串中是否含有变量,而是将全部内容当成字符串来输出;在使用双引号时,程序首先会去判断字符串中是否含有变量,如果含有变量,则直接暑输出变量值。

  • 知识库
    在定义简单的字符串时,使用单引号是一个更加合适的处理方式。如果使用双引号,PHP将花费一些时间来处理字符串的转义和变量的解析。所以在定义字符串时,如果没有特殊要求应尽量使用单引号。
3)定界符形式

 定界符采用两个相同的标识符来定义字符串,使用该方式定义字符串时要特别注意开始和结束符必须相同,另外必须要遵守以下规则:

  1. 开始标识符前面要有三个尖括号<<<;
  2. 结束标识符必须单独另起一行,并且在该行第一列,前面不能有任何空格或者其他多余字符;
  3. 标识符的命名也要像其他标签一样遵守PHP规则,只能包含字母、数字和下划线,并且必须以字母和下划线开头。
  • 提示
    标识符可以自定义,但要符合定界符命名规则。

 定界符和双引号的使用效果相同,也就是说定界符可以直接输出变量值,同时也支持使用各种转义字符。唯一的区别就是使用定界符定义字符串中的双引号不需要使用转义字符就可以实现。

3.整型(integer)

 整型数据类型只能包含整数,可以为正数,也可以为负数。其取值范围为-2147 483 648~+2 147 483 647。在给整型变量赋值时,可以采用十进制、十六进制或八进制形式。十进制就是我们平时使用的数字;要使用八进制,数字前必须加上“0(零)”;要使用十六进制,数字前必须加上“0x”,但表达式中计算的结果均以十进制数字输出。

  • 知识库
    PHP中不支持无符号整数,所以无法像其他语言一样把整数都表示成正数,即最大值翻一倍。最大值可以用常量PHP_INT_MAX来表示,如果一个数或者运算结果超出了整型范围,将会返回float。
4.浮点型(float/double)

 浮点型也称为浮点数(float),双精度数(double)或实数(real)。浮点型数据类型用于存储整数或小数,是一种近似的数值。它提供了比整数大得多的精度,可以精确到小数点后15位。浮点数的字长和平台相关,在32位操作系统中,浮点数可以表示为1.7e-308~1.7e+308之间的数据。

 浮点数既可以表示为简单的浮点数常量,如1.234;也可以表示为科学计数法的形式,尾数和指数之间用e或E隔开,如1.2e3,35.6e-3。

  • 提示
    PHP中浮点类型的精度有点问题,所以在应用浮点数时,尽量不要去比较两个浮点数是否相等,也不要将一个很大的数与一个很小的数相加减,此时那个很小的数可能会被忽略。如果必须进行高精度数学计算,可以使用PHP提供的专用数学函数序列和gmp()函数。

复合函数类型

 复合数据类型就是将多个简单数据类型组合在一起,存储在一个变量名中。PHP提供了数组(array)和对象(object)两种复合数据类型,它们都可以包含一种或多种简单数据类型。

1.数组(array)

 数组是一系列相关数据的集合,以某种特定方式进行排列,形成一个可操作的整体。数组中可以包含:标量数据、数组、对象、资源等。
 数组中的每个数据称为一个元素,元素包括索引(键名)和值两部分。在PHP中,元素索引只能由数字或字符串组成。元素值可以是基本数据类型,也可以是符合数据类型(如以一个数组作为元素);可以是相同的数据类型,也可以是不同的数据类型。

2.对象(object)

 对象是一种更高级的数据类型,对象类型的变量由一组属性值和一组方法构成。对象可以表示具体的事物,也可以表示某种抽象的规则、事件等。

特殊数据类型

特殊数据类型包括资源(resource)和空值(NULL)两种。

1.资源(resource)

 资源是一种特殊变量类型,用于保存对外部数据源的引用,如文件、数据库连接等。
 在PHP中,只有负责将资源绑定到变量的函数才能返回资源,无法将其他数据类型转换为资源类型。资源变量并不真正保存一个值,而只是保存一个指针。在使用资源时,系统会自动启动垃圾回收机制,释放不再使用的资源,避免内存消耗殆尽。所以资源很少需要手动释放。

  • 提示
    var_dump()函数显示关于一个或多个表达式的结构信息,包括表达式的类型和值。
2.空值(NULL)

 空值,顾名思义,就是没有为变量设置任何值。空值NULL不区分大小写,null和NULL效果是一样的。有3种情况通常被赋予空值:变量没有被赋任何值,被赋值为null,变量赋值后使用unset()函数进行清除。

  • 提示
    unset()函数的作用就是从内存中删除变量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值