PHP学习 变量使用总结


Posted in PHP onMarch 24, 2011
1.定义常量define("CONSTANT", "Hello world.");
常量只能包含标量数据(boolean,integer,float 和 string)。
调用常量时,只需要简单的用名称取得常量的值,而不能加“$”符号,如:echo CONSTANT;
注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。

2.普通变量$a = "hello";

3.可变变量(使用两个美元符号($))
$$a = "world";
两个变量都被定义了:
$a 的内容是“hello”并且 $hello 的内容是“world”。
因此,可以表述为:
echo "$a ${$a}";或者  echo "$a $hello";它们都会输出:hello world
要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,解析器需要知道是想要 $a[1] 作为一个变量呢,还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。

4.静态变量
在函数内部static $a = 0;
注意:声明中用表达式的结果对其赋值会导致解析错误如static  $a =3+3;(error)
静态变量仅在局部函数域中存在(函数内部),函数执行完之后,变量值不会丢失,可用于递归调用

5.全局变量
在函数体内定义的global变量,函数体外可以使用,在函数体外定义的global变量不能在函数体内使用,在全局范围内访问变量可以用特殊的 PHP 自定义 $GLOBALS 数组:
如:$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
在一个函数域内用 global 语句导入的一个真正的全局变量实际上是建立了一个到全局变量的引用
global $obj;
注:对于变量的 static 和 global 定义是以 应用 的方式实现的

6.给变量赋值:传地址赋值(简单引用):
$bar = &$foo;  //加&符号到将要赋值的变量前
改动新的变量将影响到原始变量,这种赋值操作更加快速
注意:只有命名变量才可以传地址赋值
注意:如果
$bar = &$a;
$bar = &$foo;
改变$bar的值只能改变变量foo的值,而不改变a的值(引用改变了)

7.PHP 超全局变量$GLOBALS : 包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键标为全局变量的 名称。从 PHP 3 开始存在 $GLOBALS 数组。
$_SERVER : 变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用)。
$_GET :    经由 HTTP GET 方法提交至脚本的变量。
$_POST :   经由 HTTP POST 方法提交至脚本的变量。
$_COOKIE : 经由 HTTP Cookies 方法提交至脚本的变量。
$_FILES :  经由 HTTP POST 文件上传而提交至脚本的变量。
文件上传表单中要有 enctype="multipart/form-data"
$_ENV :    执行环境提交至脚本的变量。
$_REQUEST :经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。该数组没有直接模拟 PHP 4.1.0 的早期版本。参见 import_request_variables()。
注意:      自 PHP 4.3.0 起,$_FILES 中的文件信息不再存在于 $_REQUEST 中。
$_SESSION :当前注册给脚本会话的变量。

PHP 相关文章推荐
一些关于PHP的知识
Nov 17 PHP
php SQL防注入代码集合
Apr 25 PHP
php GD绘制24小时柱状图
Jun 28 PHP
PHP合并数组+与array_merge的区别分析
Aug 01 PHP
PHP在特殊字符前加斜杠的实现代码
Jul 17 PHP
php中获得视频时间总长度的另一种方法
Sep 15 PHP
PHP调用Mailgun发送邮件的方法
May 04 PHP
php7基于递归实现删除空文件夹的方法示例
Jun 15 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
Sep 22 PHP
ThinkPHP框架实现的邮箱激活功能示例
Jun 15 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
Jan 23 PHP
PHP pthreads v3使用中的一些坑和注意点分析
Feb 21 PHP
优化php效率,提高php性能的一些方法
Mar 24 #PHP
php 代码优化之经典示例
Mar 24 #PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
Mar 24 #PHP
php邮件发送,php发送邮件的类
Mar 24 #PHP
php 数组排序 array_multisort与uasort的区别
Mar 24 #PHP
一个基于PDO的数据库操作类
Mar 24 #PHP
Zend Studio (eclipse)使用速度优化方法
Mar 23 #PHP
You might like
PHP 图片文件上传实现代码
2010/12/29 PHP
Zend Studio (eclipse)使用速度优化方法
2011/03/23 PHP
使用PHP编写的SVN类
2013/07/18 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
超越Jquery_01_isPlainObject分析与重构
2010/10/20 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
2013/09/15 Javascript
在JavaScript中判断整型的N种方法示例介绍
2014/06/18 Javascript
js实现简洁的滑动门菜单(选项卡)效果代码
2015/09/04 Javascript
javascript基础知识
2016/06/07 Javascript
node.js 中间件express-session使用详解
2017/05/20 Javascript
推荐15个最好用的JavaScript代码压缩工具
2019/02/13 Javascript
微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解
2019/03/28 Javascript
详解微信小程序支付流程与梳理
2019/07/16 Javascript
[00:50]2014DOTA2国际邀请赛 NEWBEE战队回顾
2014/08/01 DOTA
Windows系统配置python脚本开机启动的3种方法分享
2015/03/10 Python
python中的代码编码格式转换问题
2015/06/10 Python
Python中atexit模块的基本使用示例
2015/07/08 Python
Python实现树莓派WiFi断线自动重连的实例代码
2017/03/16 Python
Python中那些 Pythonic的写法详解
2019/07/02 Python
Django实现CAS+OAuth2的方法示例
2019/10/30 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
tensorflow2.0的函数签名与图结构(推荐)
2020/04/28 Python
CSS3实现闪烁动画效果的方法
2015/02/09 HTML / CSS
老海军美国官网:Old Navy
2016/09/05 全球购物
美国标志性加大尺码时装品牌:Ashley Stewart
2016/12/15 全球购物
擅自离岗检讨书
2014/02/11 职场文书
人事经理岗位职责
2014/04/28 职场文书
农业局党的群众路线教育实践活动整改方案
2014/09/20 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
2014年企业党支部工作总结
2014/12/04 职场文书
2014大学生学生会工作总结
2014/12/19 职场文书
财务统计员岗位职责
2015/04/14 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书
2019毕业论文致谢词
2019/06/24 职场文书
Python使用海龟绘图实现贪吃蛇游戏
2021/06/18 Python