php的基本变量类型是什么意思(PHP从入门到精通—PHP编程基础-PHP基本语法、变量、 常量)

wufei123 发布于 2024-01-01 阅读(193)

php 菜鸟教程

上篇PHP语言有一个基本的了解(PHP从入门到精通—PHP开发入门-PHP概述、PHP开发环境搭建、PHP开发环境搭建、第一个PHP程序、PHP开发流程),下面了解进行PHP编程应该学PHP习的基础知识,包括PHP基本语法、PHP变量、PHP常量、数据类型转换、流程控制语句等。

PHP基本语法ØPHP标记PHP和其他Web语言一样,都是用一对标记将PHP代码包含起来,以便和HTML代码区分PHP开来PHP支持4种风格的标记,如表所示标记风格开始标记结束标记XML风格简短风格

Script风格ASP风格在表中,每种标记风格都有各自的开始标记和结束标记1.XML风格该风格的标记以“”结束,具体示例PHP如下:。

XML风格是本书中采用的风格,也是推荐使用的风格。该风格的标记在XML、XHTML中都可以使用,服务器不可以禁用这种风格的标记。2.简短风格该风格的标记省略了XML风格中的“php”,具体示例PHP如下:

如果需要使用简短风格,必须在配置文件php.ini中设置short_open_tags选项为On,然后重启Apache服务器因为这种标记风格在许多环境中的默认设置是不支持的,因此本书不推荐使用这PHP种标记风格。

另外,如果脚本中包含XML语句,应禁止使用这种风格的标记3.Script风格该风格的标记以“”开始,以“”结束,具体示例如下:

该风格的标记类似于JavaScript语言的标记,该风格的标记PHP不需要进行配置,一般不推荐使用该风格标记,此处只需了解即可。4.ASP风格该风格的标记以“”结束,具体示例如下:

如果需要使用这种风格标记,必须在配置文件php.ini中设置asp_tags选项为On,PHP然后重启Apache服务器因为这种标记风格在许多环境中的默认设置是不支持的,因此本书不推荐使用这种标记风格ØPHP注释

注释即对程序代码的解释,在写程序时需适当使用注释,以方便自己和他人理解程序各部分的PHP作用在执行时,它会被PHP解释器忽略,因此不会影响程序的执行PHP支持C++、C、Shell三种风格的注释1.C++风格的单行注释。

该注释是从“//”开始,到该行末尾或PHP结束标记之前结束。

2.C风PHP格的多行注释该注释从“/*”开始,到“*/”结束。

3.Shell风格的单行注释该注释是从“#”开始,到该行末尾或PHP结束标记之前结束。

但不可以嵌套多行注释,下面的代码是错误的用法,具体示例如下:

该注PHP释是从“#”开始,到该行末尾或PHP结束标记之前结束,具体示例如下:

上面三种注释风格,大家可以根据需求选择合适风格的注释,并且需特别注意嵌套引起的错误此外,在PHP脚本中还可以使用多行文档注释(从“/PHP**”开始,到“*/”结束),它能快速生成具有相互参照、索引等功能的API文档。

由于初学阶段暂时用不到此种注释,此处只需了解即可PHP基本语法ØPHP标识符与关键字在现实生活中,每种事物都有自己的名称PHP,从而与其他事物区分开。例如,每种交通工具都用一个名称来标识,如图所示。

在PHP语言中,同样也需要对程序中各个元素命名加以区分,这种用来标识变量、函数、类等元素的符号称为标识符PHP语言规定,标识符是PHP由字母、数字和下画线组成的,并且只能是以字母或下画线开头的字符集合在使用标识符时应注意以下几点:。

命名时应遵循见名知义的原则系统已用的关键字不得用作标识符关键字虽然可作为变量名使用,但容易造成混淆,不PHP建议使用关键字是系统已经定义过的标识符,在程序中已有了特定的含义,如echo、class等,因此不能再使用关键字作为其他名称的标识符。

下表中列出了PHP中常用的关键字。

指出什么PHP中的标识符和关键字PHP,以及在使用的标识符时应注意哪几个重要的点,PHP常用的关键字ØPHP变量讲解变量的定义、变量的数据类型、检测数据类型、可变变量、变量的引用赋值等关于PHP变量的内容Ø变量的定义

在使用淘宝购物时,用户PHP使用购物车来存储想购买的物品,等到所有的物品都挑选完成后,选择支付即可,如图所示。

在进行支付时,系统首先将每件物品的数据存储起来,再对这些数据进行累加在PHP中,若要存储数据,就需要用到变量变量可以理PHP解为淘宝购物车中存储的物品,如苹果、水等变量的赋值是通过=来表示的,进行支付时是每个变量值相加的过程,具体示例如下:。

上述示例中, $apple和$water变量就好比购物车中存储的物品,它们存储的数PHP据分别是20和7, $sum变量存储的数据是apple和water这两个物品的数据累计之和 在PHP中,变量是由$和变量名组成的,并且变量的命名规则与标识符相同。

此处需注意,变量名是区分大小写的,如$PHPApple与$apple是两个不同的变量Ø变量类型在计算机中,操作的对象是数据,那么如何选择合适的容器来存放数据才不至于浪费空间?先来看一个生活中的例子,某公司要快递一本书,可以用文件袋和纸箱来装,但PHP是,如果使用纸箱装一本书,显然有点大材小用,浪费纸箱的空间,如图所示。

同理,为了更充分利用内存空间,PHP可以为不同的数据指定不同的数据类型。PHP支持8种数据类型,如图所示。

在上图中,PHP的数据类PHP型分为标量类型(boolean、integer、float、string)、复合类型(array、object)和特殊类型(resource、NULL)本节只介绍标量类型,其他数据类型将在后面的章节中PHP讲解。

1.boolean(布尔型)布尔型是PHP中较常用的数据类型之一,该类型数据只能为true或false(true表示真,false表示假,这两个值是不区分大小写的),具体示例如下:

2.integPHPer(整型)整型表示存储的数据是整数,例如1、-1等在计算机语言中,整型数据可以用二进制、八进制、十进制、十六进制表示,并且在前面加上+或-表示正整数或负整数如果用二进制表示,数字前必须加上0b或0BPHP;如果用八进制表示,数字前必须加上0;如果用十六进制表示,数字前必须加上0x或0X,具体示例如下:。

二进制数是由0、1组成,每逢2进1位;八进制数是由0~7的数字序列组成,每逢8进1位;十六进制数是由PHP0~9的数字和A~F的字母组成序列,每逢16进1位此处需注意,整型数值有最大取值范围,它的范围与平台有关。

3.float(浮点型)浮点型表示存储的数据是实数,它的取值范围也与平台有关。在PHP中,浮点PHP型数据默认有两种书写格式,具体示例如下:

4.string(字符串型)字符串是一系列的字符,例如上例中的"圆周率的书写格式:

"就是一个字符串字符串可以使用单引号、双引号、定界符三种形式来定义虽然三种形式PHP都可以定义一个字符串,但它们却有本质的不同,接下来详细讲解这三种形式。

1)单引号形式该形式就是将字符序列用单引号括起来如果需要在字符串中表示一个单引号,则需要使用转义字符(\,也称反斜杠)转义如果需要PHP在字符串中表示反斜杠,则需要使用两个反斜杠此外,单引号这种形式的字符串只能转义单引号和反斜杠。

PHP中常见的转义字符如表所示

2)双引号形式该形式就是将字符序列用双引号括起来,可以转义一些字符,还可以将PHP字符串的变量名替换为变量值(即可以解析其中包含的变量)3)定界符字符串的另一种形式是使用定界符(<<<)该形式在<<<之后提供一个标识符用来表示开始,然后是包含的字符串,最后是用同样的标识符表示结束字PHP符串。

注意,结束标识符必须从行的第一列开始,并且后面除了分号不能再包含其他任何字符定界符形式的字符串可以很容易定义较长的字符串,因此通常用于从文件或数据库中大段地输出文档在图中,PHP的数据类型分为标PHP量类型(。

boolean、integer、float、string)、复合类型(array、object)和特殊类型(resource、NULL)Ø检测数据类型在PHP中,变量的类型是由存储的数据决定PHP的为了检测变量所赋的值是否符合期望的数据类型,PHP中内置了一些检测数据类型的函数,如表所示。

函数功能is_bool()检测变量是否为布尔型is_int()检测变量是否为整型is_float()检测变PHP量是否为浮点型is_string()检测变量是否为字符串型is_array()检测变量是否为数组型

is_object()检测变量是否为对象型is_resource检测变量是否为资源型is_null()PHP检测变量是否为空值is_numeric()检测变量是否为数字或数字组成的字符串在表中,若变量属于某个类型,则函数返回true,否则返回false。

Ø可变变量前面使用变量时,变量名是不可以更改的如果想动PHP态地设置和使用变量名,就需要使用可变变量,一个可变变量通过一个普通变量的值作为这个可变变量的变量名Ø变量的引用赋值前面使用的变量都是传值赋值,即当一个变量的值赋给另一个变量时,改变其中一个变量的值,将PHP不会影响另一个变量的值。

而引用赋值相当于给变量起了个别名,表示新变量引用原变量,如果一个变量改变,另一个变量也会随之改变这就好比一个人有大名与小名之分,但都指同一人使用引用赋值,需要将&添加到引用的变PHP量前面PHP变量常见的PHP继承开发环境

变量是指在程序执行过程中值可以变化的量,常量是指在程序执行过程中值不变的量,例如圆周率π就可以定义为常量。在PHP中,常量是通过define()函数来定义的,其PHP语法格式如下:

该函数有三个参数,具体如表所示。

另外,mixed 说明一个参数可以接受多种不同的(但不一定是所有的)类型获取常量的方法有两种:一种是直接使用常量名获取对应的值,另一种是使用constanPHPt()函数获取对应的值constant()函数的语法格式如下:。

参数$name为需要获取常量的名称,也可以为存储常量名的变量。该函数调用成功,返回常量值,否则提示常量没有被定义。defined()函数PHP可以判断一个常量是否已定义,其语法格式如下:

参数$name为需要判断的常量名,若该常量已定义,则返回true,否则返回falseØ常量的定义及获取变量是指在程序执行过程中值可以变化的量,常量是指在程序PHP执行过程中值不变的量,例如圆周率π就可以定义为常量。

在PHP中,常量是通过define()函数来定义的,其语法格式如下:bool define(string $name, mixed $value [PHP, bool $case_insensitive = false])

该函数有三个参数,具体如表所示参数说明$name必选参数,指定常量名,即标识符$value必选参数,指定常量值,允许标量、NULL、PHParray类型$case_insensitive可选参数,默认为false,表示大小写敏感,若设置为true,表示大小不敏感。

另外,mixed 说明一个参数可以接受多种不同的(但不一定是所有的)类型获PHP取常量的方法有两种:一种是直接使用常量名获取对应的值,另一种是使用constant()函数获取对应的值constant()函数的语法格式如下:。

mixed constant(string $name)PHP参数$name为需要获取常量的名称,也可以为存储常量名的变量该函数调用成功,返回常量值,否则提示常量没有被定义defined()函数可以判断一个常量是否已定义,其语法格式如下:。

bool definePHPd(string $name)参数$name为需要判断的常量名,若该常量已定义,则返回true,否则返回falseØ预定义常量预定义常量是指系统中已定义的常量,可以在程序中直接使用,具体如表所示。

常量PHP名说明__FILE__当前文件路径__LINE__当前所在行号__FUNCTION__当前的函数名__CLASS__当前的类名__METHOD__当前对象的方法名PHP_OSPHP运行的操作系统,如WPHPINNT、UNIX

PHP_VERSION当前PHP的版本号TRUE布尔值trueFALSE布尔值falseNULL空值nullE_ERROR错误,导致PHP脚本终止运行E_WARNING警告,不会导致PHPPHP脚本终止运行E_PARSE

解析错误,由程序解析器报告E_NOTICE非关键的错误Ø数据类型转换数据类型转换是指变量或值从一种数据类型转换为另一种数据类型转换有两种方式:自动类型转换和强制类型转换PHPØ自动类型转换自动类型转换是指数据类型由PHP自动转换,使用时需注意以下几点:。

1. 其他类型转换为布尔类型当其他类型需要转换为布尔类型时,整型0、浮点型0.0、字符串型""与"0"、不包含任何元素的PHP数组、不包含任何成员变量的对象、NULL会被转换为false,其他值被转换为true。

2. 布尔型转换为整型当布尔型转换为整型时,true转换为整数1,false转换为整数03. 字符串型转换为整型或PHP浮点型如果字符串是数字序列的字符,则转换为该数字,否则会出现警告4. 布尔型转换为字符串型。

true转换为"1",false转换为""5. 整型或浮点型转换为字符串型整型或浮点型数据的字面样式转换为字PHP符串形式Ø强制类型转换强制类型转换是使用者手动将某个数据类型转换成目标数据类型,其中最简单的方法是在需要转换的变量前加上用圆括号括起来的目标类型,具体如所示。

转换操作符说明转换操作符说明(booleaPHPn)转换成布尔型(float)转换成浮点型(string)转换成字符串型(array)转换成数组(integer)转换成整型(object)转换成对象除了上述转换方式外,类型转换还可以通过函数intvPHPal()、floatval()、strval()和settype()实现,具体如表所示。

函数说明int intval (mixed $var [, int $base = 10 ])返回变量$var的PHPinteger数值float floatval (mixed $var)返回变量$var的float数值

string strval (mixed $var)返回变量$var的string值bool sPHPettype (mixed &$var , string $type)将变量 var 的类型设置成 type

通过圆括号方式进行的强制类型转换和上表中前三种函数进行的强制类型转换都没有改变这些被转换变量PHP的类型与值,它们仅仅是将转换得到的新类型数据赋给新的变量,但上表中的settype()函数可以将变量的本身类型转换为其他类型。

亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联PHP系我。我非常乐意与您交流。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。