Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP 学习总结之变量

PHP 学习总结之变量

不言
不言asal
2018-04-03 16:26:171452semak imbas

本篇文章给大家分享的是关于PHP学习中变量部分的知识,有需要的小伙伴可以参考一下

变量标识符

标识符即是变量的名称,PHP 中关于变量的标识符有以下规则:

  • 由任意字母、数字、下划线组成,但不能以数字开头

  • 严格区分大小写

为了科学规范标识符,主要有以下几种流行的命名方式:

1. 驼峰命名法

第一个单词以小写字母开始,之后每个单词的首字母大写(小驼峰法);或每一个单词的首字母都采用大写字母(大驼峰法,也称帕斯卡命名法)。

$myFirstName = 'jochen'; # 小驼峰法
$MyFirstName = 'jochen'; # 大驼峰法
2.匈牙利命名法

变量名 = 属性 + 类型 + 对象描述。

$sMyFirstName = 'jochen';
3.下划线命名法

所有字母均小写,并且每个单词间以下划线分割

$my_first_name = 'jochen';

变量赋值

PHP 提供了两种方式给变量赋值,分别是传值赋值和引用赋值。

最常用的是传值赋值,当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量。这意味着,当一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量。

引用赋值是原始变量内容的一种别名,不同于 C 语言中的指针,但改动变量的值一样会影响到原始变量。

$foo = 'jochen'; # 传值赋值
$bar = &$foo;    # 引用赋值

$bar = 'coco';   # $foo、$bar 的值都为 coco

变量类型

变量类型是指能够保存在该变量中的数据类型。PHP 的数据类型可分为三种:标量数据类型、复合数据类型和特殊数据类型。PHP 标量数据类型有 boolean(布尔型)integer(整型)float(浮点型,也称作 double)string(字符串),复合数据类型有 array(数组)object(对象)callable(可调用),特殊数据类型 resource(资源)NULL(无类型)

PHP 是一种弱类型语言,变量在使用之前并不需要声明类型,且同一变量可以保存多种不同类型的数据。有时,为了判断当前变量的数据类型,我们可以使用以下方法进行判断:

gettype()                 — 获取变量的类型
is_int() 或 is_integer()  — 检测变量是否是整数
is_numeric()              — 检测变量是否为数字或数字字符串
is_float() 或 is_double() — 检测变量是否是浮点型
is_string()               — 检测变量是否是字符串
is_bool()                 — 检测变量是否是布尔型 
is_array()                — 检测变量是否是数组
is_object()               — 检测变量是否是一个对象
is_null()                 — 检测变量是否为 NULL 
is_resource()             — 检测变量是否为资源类型

有时,我们需要强制将某个变量当作某种类型来求值,就要进行类型强制转换:

(int) 或 (integer)  — 转换为整形
(bool) 或 (boolean) — 转换为布尔类型
(float) 或 (double) — 转换为浮点型
(string)            — 转换为字符串
(array)             — 转换为数组
(object)            — 转换为对象
(unset)             — 转换为 NULL

变量作用域

1.超全局变量

由 PHP 预定义的,且在任何脚本的任何作用域中始终可用的一种变量。超全局变量包括:

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

其中 $GLOBALS 是一个包含了所有全局变量的关联数组,变量的名字就是数组的 key,变量的值就是数组的 value

2.全局变量

在函数外部创建的变量, for 语句 、while 语句、foreach 语句中创建的变量也属于全局变量,其作用域是从创建变量的语句开始到文件的末尾,但在函数内部不可见。需要注意的是:常量一旦被创建,将在全局中可见,同时在函数内部也是可见的。

3.局部变量

在函数内部创建的变量,其作用域是从创建变量的语句开始到函数末尾。需要注意的是:如果函数内部的变量与外部的全局变量名称相同时,内部变量会覆盖外部变量。另外,在函数内部创建的静态变量是无法在函数外部使用的。

requireinclude 不影响作用域,即如果这两个语句作用于函数内部,变量具有局部作用域;如果作用于函数外部,变量具有全局作用域。

用关键字 global  声明变量,可以用来手动指定一个在函数中定义或使用的变量具有全局作用域。

相关推荐:

PHP 学习总结之字符串


Atas ialah kandungan terperinci PHP 学习总结之变量. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:ApiDoc的使用 Artikel seterusnya:PHP 学习总结之数组