php程序变量,PHP 变量

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 中,这些字母被称为变量。 5f64ccf238723a2b2812f3064427fb5f.png 变量是用于存储数据的容器。

PHP 变量

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

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

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

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

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

变量名不能包含空格

变量名是区分大小写的($y 和 $Y 是两个不同的变量) 5f64ccf238723a2b2812f3064427fb5f.png 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 变量在函数中定义,属于局部变量。 5f64ccf238723a2b2812f3064427fb5f.png 你可以在不同函数中使用相同的变量名称,因为这些函数内定义的变量名是局部变量,只作用于该函数内。

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 函数 章节对它做更详细的讨论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419664.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么构造函数不能是虚函数

为什么构造函数不能是虚函数 从存储空间角度看,使用虚函数时,系统要有一定的空间开销,当一个类带有虚函数时,编译系统会为该类构造一个虚函数表(virtual function table),他是一个指针数组&…

漏洞:WebRTC 泄漏用户IP

WebRTC又称为“网页即时通信”,是一组API函数,它经过W3C组织的认证,支持浏览器之间的语音通话、视频聊天和P2P模式分享文件。 这个协议主要包括:getUserMedia,RTCPeerConnection,RTCDataChannels&…

怎么在电脑安装php文件夹在哪个文件夹,php进行文件上传时找不到临时文件夹怎么办,电脑自动保存的文件在哪里...

php进行文件上传时找不到临时文件夹怎么办PHP上传文件时找不到临时文件夹怎么办,php上传文件时找不到临时文件夹的解决方案:先打开php.ini配置文件;然后修改内容[upload _ tmp _ dir’ c :/windows/temp ‘],文件夹路径要根据自己…

【SIGGRAPH 2015】【巫师3 狂猎 The Witcher 3: Wild Hunt 】顶级的开放世界游戏的实现技术。...

【SIGGRAPH 2015】【巫师3 狂猎 The Witcher 3: Wild Hunt 】顶级的开放世界游戏的实现技术 作者:西川善司日文链接 http://www.4gamer.net/games/202/G020288/20150811091/计算机图形和交互技术的学术大会【SIGGRAPH 2015】,在北美时间的8月9日到13日召…

php边框圆角,css3圆角和圆角边框使用方法总结

在CSS3出现之前,想要实现圆角的效果可以通过图片或者用margin属性实现,传统的圆角生成方案,需要多张图片作为背景图案。CSS3出现以后,就不需要浪费时间去制作多张图片了,大大的减少了工作量,提高了网页的性…

php中二进制函数,PHP-----函数和二进制

递归-----函数本身调用本身。每一个栈中的变量都是独立的,不受外部变量的影响,除非传参。这一点和Js不一样。在一个php页面中要引用其他的php文件可以使用require,require_once或者include,include_once;require引入的文件如果不存…

关于指针和堆栈

转载:http://blog.qdac.cc/?p2804 【码神】[长春]swish(109867294) 21:17:40 这块要明白一个东西,我们程序所能操作的数据,从CPU的角度来看,只是在寄存器中的那几个东西。剩下的内存中的东西,磁盘上的东西&#xff0c…

php 文件类型 html,HTML的文档类型怎么选择

声明帮助浏览器正确地显示网页。声明(推荐学习:HTML入门教程)Web 世界中存在许多不同的文档。只有了解文档的类型,浏览器才能正确地显示文档。HTML 也有多个不同的版本,只有完全明白页面中使用的确切 HTML 版本,浏览器才能完全正确…

HDOJ 2037 今年暑假不AC 【贪心】

HDOJ 2037 今年暑假不AC 【贪心】 题目链接 http://acm.hdu.edu.cn/showproblem.php?pid2037 给出n个电视节目的开始时间和结束时间, 要求合理安排如果看这些节目可以完整的看完更多节目 策略是观看的节目的长度越短越好,也即节目越早结束我越想看它。…

php 邮件发送验证码,发送验证码邮件有什么好的解决方案?

用户Passport系统,注册,找回密码都是通过邮件发送验证码,有什么好的方案实现。我之前用的是私人的QQ邮箱,发现偶尔系统会来一封邮件要我输入验证码,而且就怕用多了会被腾讯拉黑或者自动移到垃圾箱处理。还有就是什么情…

自定义多列排序:C++/Java实现

前言: 有些时候,我们在编程中会遇到多列排序的需求。假如在execle,这事儿就太easy了。不过没办法,现在就需要你用Java或者C实现这样一个功能! 比如将下表无序的数据通过重排之后按照以下规则显示结果: 1.第二列从大到小…

php的prepare方法,PHP之PDO-prepare

当同一个SQL多次查询(执行)时,只是每次的查询条件(数据)不一样,那么,使用prepare就对了.它可大大减少查询(执行)时间,服务器资源消耗..原型:PDOStatement PDO::prepare(string query [, array driver_options])占位符:1,有名占位符(:named parameters)2,问号占位符(?)如:INSER…

多态,面向对象

/** * 里氏替换原则 : * 能使用父类的地方,一定可以使用子类 * 什么是多态 : * 父类的引用,指向子类的对象 * 多态的前提条件 : * 有继承关系的两个类 * 多态的目的 : * ☆☆☆ 代码的重用 * 多态发什么在什么时候 : * 赋值…

mysql安装im,mysql安装记录

zip下载及安装教程:https://blog.csdn.net/qq_41307443/article/details/79839558我按照步骤操作遇到了一些问题记录一下:1 没有 ini ,文件,自己建立一个新的 .ini文件。自己的系统没显示后缀,我配置了一下;2 启动服务…

python爬取网页表格数据匹配,python爬虫——数据爬取和具体解析

标签:pattern div mat txt 保存 关于 json result with open关于正则表达式的更多用法,可参考链接:https://blog.csdn.net/weixin_40040404/article/details/81027081一、正则表达式:1.常用正则匹配:U…

Notification的学习,4.0前后的差别,和在设置声音的时候获取资源的uri方法

android 4.0 前后很多api都有了较大的差别,不多说现在学习下notification前后实现的差别,本文参考了 :http://my.oschina.net/ososchina/blog/353692;http://gundumw100.iteye.com/blog/1873318; http://blog.csdn.net…

标题 日期问题java蓝桥杯,日期类的使用(java)-蓝桥杯

蓝桥杯日期问题常考,java提供了日期类很方便;//日历类Calendar c Calendar.getInstance();  // 获取实例化对象Date date c.getTime();   // 日期类得到c的时间;SimpleDateFormat sdf new SimpleDateFormat("yyyy-mm-dd hh:mm:s…

前端学习(1598):ref转发

第一种方式 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><script src&…

PHP opencv Dlib,Face_Recognition

Face_Recognition使用Opencv和Dlib实现基于视频的人脸识别文件夹介绍1、Resources\pictures此文件夹下存放人脸保存结果2、Resources\video此文件夹下存放带标注视频保存结果3、Resources\faceS此文件夹下存放各个人物的图片&#xff0c;用于人脸库的建立4、Resources\featureD…