PHP 变量

变量是用于存储信息的"容器":

实例

$x=5;

$y=6;

$z=$x+$y;

echo $z;

?>

运行实例 »

与代数类似

x=5

y=6

z=x+y

在代数中,我们使用字母(如 x),并给它赋值(如 5)。

从上面的表达式 z=x+y ,我们可以计算出 z 的值为 11。

在 PHP 中,这些字母被称为变量。

变量是用于存储数据的容器。

PHP 变量

与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)。

变量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。

PHP 变量规则:

变量以 $ 符号开始,后面跟着变量的名称

变量名必须以字母或者下划线字符开始

变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )

变量名不能包含空格

变量名是区分大小写的($y 和 $Y 是两个不同的变量)

PHP 语句和 PHP 变量都是区分大小写的。

创建(声明)PHP 变量

PHP 没有声明变量的命令。

变量在您第一次赋值给它的时候被创建:

实例

$txt="Hello world!";

$x=5;

$y=10.5;

?>

运行实例 »

在上面的语句执行中,变量 txt 将保存值 Hello world!,且变量 x 将保存值 5。

注释:当您赋一个文本值给变量时,请在文本值两侧加上引号。

PHP 是一门弱类型语言

在上面的实例中,我们注意到,不必向 PHP 声明该变量的数据类型。

PHP 会根据变量的值,自动把变量转换为正确的数据类型。

在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。

PHP 变量作用域

变量的作用域是脚本中变量可被引用/使用的部分。

PHP 有四种不同的变量作用域:

local

global

static

parameter

局部和全局作用域

在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。

在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:

实例

$x=5; // 全局变量

function myTest()

{

$y=10; //

局部变量

echo "

Test variables inside the function:

";

echo

"Variable x is: $x";

echo "
";

echo "Variable y is: $y";

}

myTest();

echo "

Test variables outside the function:

";

echo "Variable x is: $x";

echo "
";

echo "Variable y is: $y";

?>

运行实例 »

在以上实例中 myTest() 函数定义了 $x 和 $y 变量。

$x 变量在函数外声明,所以它是全局变量

, $y 变量在函数内声明所以它是局部变量。

当我们调用myTest()函数并输出两个变量的值,

函数将会输出局部变量 $y 的值,但是不能输出 $x 的值,因为 $x 变量在函数外定义,无法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用 global 关键字。

然后我们在myTest()函数外输出两个变量的值,函数将会输出全局部变量 $x 的值,但是不能输出 $y 的值,因为 $y 变量在函数中定义,属于局部变量。

你可以在不同函数中使用相同的变量名称,因为这些函数内定义的变量名是局部变量,只作用于该函数内。

PHP global 关键字

global 关键字用于函数内访问全局变量。

在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字:

实例

$x=5;

$y=10;

function myTest()

{

global $x,$y;

$y=$x+$y;

}

myTest();

echo $y; // 输出 15

?>

运行实例 »

PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。

index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。

上面的实例可以写成这样:

实例

$x=5;

$y=10;

function myTest()

{

$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];

}

myTest();

echo $y;

?>

运行实例 »

Static 作用域

当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。

要做到这一点,请在您第一次声明变量时使用 static 关键字:

实例

function myTest()

{

static $x=0;

echo $x;

$x++;

}

myTest();

myTest();

myTest();

?>

运行实例 »

然后,每次调用该函数时,该变量将会保留着函数前一次被调用时的值。

注释:该变量仍然是函数的局部变量。

参数作用域

参数是通过调用代码将值传递给函数的局部变量。

参数是在参数列表中声明的,作为函数声明的一部分:

实例

function myTest($x)

{

echo $x;

}

myTest(5);

?>

我们将在 PHP 函数 章节对它做更详细的讨论。

css 调用变量 php,PHP 变量相关推荐

  1. CSS中调用JS函数和变量

    在CSS来调用JS程序. 这个技术是网络安全里的,叫做CSS跨站. 我们知道CSS里是可以控制某些HTML元素的属性的,譬如background-image等等,而在URL里添加Javascript: ...

  2. [css] sass是怎么定义变量的?

    [css] sass是怎么定义变量的? sass变量可以理解为以$+变量名为键的键值对,例如$color-black:#000 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一 ...

  3. 【函数的定义、调用(嵌套调用、递归调用)、声明、函数的分类(有无返回值、有无参数)、变量(自动变量与静态变量、局部变量与全局变量、只读变量)】(学习笔记7--函数)

    第一篇博文,打卡新星计划第三季3.4~4.4,希望能有质的飞跃,顶峰相见 一.自定义函数 1.函数的定义 函数在使用前也需要定义,定义的格式如下: 数据类型 函数名([数据类型 参数1],[数据类型 ...

  4. php如何拼接变量名,php动态拼接变量名,可变变量,动态变量,使用花括号,使用两个$符...

    php动态拼接变量名,可变变量,动态变量,使用花括号,使用两个$符 方式一:使用花括号,前缀部分不需要用单引号 $nums10 = 100; $xxx*${bcount.$nums10}['m54'] ...

  5. 读书笔记:SQL 查询中的SQL*Plus 替换变量(DEFINE变量)和参数

    本文为"SQL*Plus 替换变量 - 在 SQL 查询中定义变量和参数"的读书笔记. 此文主要是讲替换变量,也称为DEFINE变量,但也涉及了绑定变量和SQL Plus系统变量. ...

  6. 浅显易懂 Makefile 入门 (02)— 普通变量和自动变量定义、使用($@、$^、$< 作用)、变量覆盖 override、变量的来源 origin

    1. 变量的定义 Makefile 文件中定义变量的基本语法如下: 变量的名称=值列表 变量的名称可以由大小写字母.阿拉伯数字和下划线构成.等号左右的空白符没有明确的要求,因为在执行 make 的时候 ...

  7. 堆栈,静态变量和普通变量,静态函数和普通函数的区别

    首先简单介绍一下堆和栈的区别. 1.内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1).栈区(stack)- 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等.其操作方式类似 ...

  8. linux超级基础系列——shell变量(本地变量和环境变量)

    linux超级基础系列--shell变量(本地变量和环境变量) 2006-12-04 00:39 为使shell编程更有效,系统提供了一些shell变量.shell变量可以保存诸如路径名.文件名或者一 ...

  9. 管道符和作业控制、shell变量、环境变量配置文件

    2019独角兽企业重金招聘Python工程师标准>>> 管道符 | 管道符的作用是将前面一个命令的输出作为后面一个命令的输入 [root@linux-128 ~]# cat /etc ...

最新文章

  1. 删除文件夹中包含的子文件夹及文件
  2. [译文]C# Heap(ing) Vs Stack(ing) in .NET: Part I
  3. Mysql可重复读实现原理分析
  4. Java笔记:包装类、toString()方法、单例类、比较(==和equals方法)
  5. 网络营销第四课:网络营销需要掌握的网页代码(2)
  6. scala case语句_Scala模式与case语句匹配
  7. Python下安装LDA模块,学习使用
  8. 线程调度及进程调度详解
  9. 《Arduino奇妙之旅:智能车趣味制作天龙八步》一1.4 轰!
  10. JavaWeb项目间隔刷新出现412
  11. 工商银行网银助手无法安装:系统无法打开指定的设备或文件
  12. 【Android】Service管理通知栏通知模板
  13. html渲染json的插件,lottieJS(Json动画的使用)
  14. jquery中的data-icon和data-role
  15. Typecho炫彩鼠标插件:HoerMouse
  16. 云服务器怎么配置cpu与内存搭配
  17. 程序员的工资被严重高估?
  18. 如何购买云服务器----以华为云服务器为例
  19. 最长递增子序列的O(NlogN)算法
  20. Python安装pip时, 报错:zipimport.ZipImportError: can‘t decompress data; zlib not available 解决办法:

热门文章

  1. linux 杀毒软件 clamav安装使用
  2. golang select channel 多路复用
  3. Linux makefile 教程
  4. Linux中与命令相关的命令
  5. How program works
  6. Android--相对布局
  7. Android开发--Matrix(一)--实现图片的动态放大缩小
  8. CMake常见变量——Project和CMake相关信息
  9. php 服务器运行状态,检查服务器各种服务的运行状态
  10. python selenium 爬取js加载的内容为空,Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容...