【PHP】PHP变量

news/2025/3/15 10:32:42/

1、变量介绍

PHP 是一门弱类型语言,不必向 PHP 声明该变量的数据类型。PHP 会根据变量的值,自动把变量转换为正确的数据类型。在强类型的编程语言中,必须在使用变量前先声明(定义)变量的类型和名称。

<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>

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

  • 变量以 $ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母、数字以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y 和 $Y 是两个不同的变量)

2、局部变量、全局变量、静态变量

局部变量: 局部变量是指在函数或方法内部定义的变量。它们只在该函数或方法的内部可见,其他函数或方法无法访问它们。当函数或方法被调用时,局部变量会创建并在该函数或方法的执行期间存在。一旦函数或方法执行结束,局部变量就会被销毁。
全局变量: 全局变量是指在所有函数和方法的外部定义的变量。它们在程序的整个范围内都是可见的,可以被任何函数或方法访问和修改。在函数或方法内部,可以使用 global 关键字来引用全局变量。
静态变量: 静态变量是指在函数或方法内部定义的变量,但具有静态存储期限。即使函数或方法被多次调用,静态变量的值也会保持不变。在函数或方法内部,可以使用 static 关键字来定义静态变量。

<?php
$x=5; // 全局变量
$s = 10;function testFunc()
{$y=10; // 局部变量echo "<p>测试函数内变量:<p>";echo "变量 x 为: $x";echo "<br>";global $x;echo "使用global关键字获取全局变量X:  $x";echo "<br>";echo "使用 \$GLOBALS数组获取全局变量s:$GLOBALS[s]";//PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。echo "<br>";echo "变量 y 为: $y";echo "<br>";} function testStaticFunc($num = 0){static $temp = 0;$temp++;echo "第$num 次static静态变量temp:$temp";echo "<br>";
}testFunc();echo "<p>静态变量测试:<p>";//静态变量测试1
testStaticFunc(1);//静态变量测试2
testStaticFunc(2);//静态变量测试3
testStaticFunc(3);echo "<p>测试函数外变量:<p>";
echo "变量 x 为: $x";
echo "<br>";
echo "变量 y 为: $y";

http://www.ppmy.cn/news/1061562.html

相关文章

【微服务】05-网关与BFF(Backend For Frontend)

文章目录 1.打造网关1.1 简介1.2 连接模式1.3 打造网关 2.身份认证与授权2.1 身份认证方案2.1.1 JWT是什么2.1.2 启用JwtBearer身份认证2.1.3 配置身份认证2.1.4 JWT注意事项 1.打造网关 1.1 简介 BFF(Backend For Frontend)负责认证授权&#xff0c;服务聚合&#xff0c;目标…

Qt ui对某控件进行全局提升报错:no such file or directory

问题 在Qt项目中&#xff0c;设计师界面&#xff0c;对某一控件进行提升&#xff0c;设置完“提升的类名称”、“头文件”、全局包含后&#xff0c;构建时&#xff0c;报“no such file or directory”错误&#xff0c;但文件命名存在呀。 解决 根据问题就应该明白&#xf…

Ubuntu安装RabbitMQ

一、安装 更新系统软件包列表&#xff1a; sudo apt update安装RabbitMQ的依赖组件和GPG密钥&#xff1a; sudo apt install -y curl gnupg curl -fsSL https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc | sudo gpg --dearmo…

如何使用HTML5新增的标签来优化SEO?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用HTML5新增的标签来优化SEO&#xff1f;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对…

【PLSQL】PLSQL学习笔记

文章目录 一&#xff1a;记录类型1.语法2.代码实例 二&#xff1a;字符转换三&#xff1a;%TYPE和%ROWTYPE1.%TYPE2.%ROWTYPE 四&#xff1a;循环1.LOOP2.WHILE&#xff08;推荐&#xff09;3.数字式循环 五&#xff1a;游标1.游标定义及读取2.游标属性3.NO_DATA_FOUND和%NOTFO…

【案例教程】高分论文密码:大尺度空间模拟预测与数字制图

尺度空间模拟预测和数字制图技术和不确定性分析广泛应用于高分SCI论文之中&#xff0c;号称高分论文密码。大尺度模拟技术可以从不同时空尺度阐明农业生态环境领域的内在机理和时空变化规律&#xff0c;又可以为复杂的机理过程模型大尺度模拟提供技术基础。在本次培训中&#x…

【C++】开源:Box2D动力学库配置与使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍Box2D动力学库配置与使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c…

uniapp,使用canvas制作一个签名版

先看效果图 我把这个做成了页面&#xff0c;没有做成组件&#xff0c;因为之前我是配合uview-plus的popup弹出层使用的&#xff0c;这种组件好像是没有生命周期的&#xff0c;第一次打开弹出层可以正常写字&#xff0c;但是关闭之后再打开就不会显示绘制的线条了&#xff0c;还…