PHP变量与常量

简介: PHP语言中的变量与常量部分知识点记录


本文是复习所写,并不会涵盖一些基础知识点

变量

命名

有数字、字母、下划线组成,不能以数字开头,用正则表达式描述为^[a-zA-Z_\x80-\xff][a-zA-Z0-9_\x80-\xff]*$。这大概是所有语言通用的规则,只不过PHP中变量名前要加上$

赋值

变量有两种赋值方式:传值赋值引用赋值

默认是传值赋值

预定义变量

PHP提供了大量的预定义变量,这些变量被分别放到几个数组中,称为预定数组。这些数组在全局范围内生效,所以也被称为超全局变量

  1. $GLOBALS
  2. $_SERVER
  3. $_GET
  4. $_POST
  5. $_REQUEST
  6. $_SESSION
  7. $_COOKIE
  8. $_ENV
  9. $php_response_header - HTTP 响应头,当使用HTTP包装器时将会被HTTP响应头信息填充
  10. $argc
  11. $argv

作用域

<?php

/*

* 当前文件范围内生效

* 包括require、include进来的文件

*/

$a=1;

 

include'b.php';

 

functionc()

{

   /*

    * 函数内部的变量是跟函数外部的隔离的

    * 通过global关键字可以将函数外部的变量引用进来

    */

   global$a;

   

   $d=2;

   $d+=$a;

   $d+=$GLOBALS['a']; // 也可以通过这种方式来访问$a变量

   

   /*

    * 也可以将变量声明为静态的

    * 静态变量是在编译阶段就分配到特殊的内存空间,称为静态空间

    * 静态变量只会初始化一次,并且不会随着函数的退出而销毁

    * 千万不要引用赋值给静态变量,不会报错但是会跟预期不一致

    */

   static$e=0;

   $e+=1;

}

可变变量

<?php

$a='hello';

$b= ['hello'];

 

/*

* 等价于${$a}

* {}是限定符,用来明确范围

* $a的值是纯数字的话也可以正常执行

*/

$$a='hi';

${$b[0]} ='hi';

 

// 类属性也可以通过这种方式访问

classTest

{

   public$hello='class inner';

}

(newTest())->$a;

(newTest())->{$b[0]};

 

常量

命名

常量命名跟变量命名一样,只不过不需要前面带$

定义常量

<?php

/*

* 可以使用define()、const定义常量

* 常量值只能是标量或数组,一但被定义,其值便无法更改

*

* const定义常量是在预编译阶段执行的,所以必须处于最顶端的作用域。这就是说不能在函数、循环、try/catch语句内使用

*/

constBOOK_TOTAL=20;    

define('PRICE', 200);

 

classTest

{

   constBOOKS= [];

}    

 

$a='PRICE';

echoconstant($a); // 当需要动态获取变量的时候,建议使用这种方式

 

get_defined_constants(); // 获取所有已定义常量列表

作用域

常量的作用域是全局的

预定义常量

魔术常量

  1. __LINE__
  2. __FILE__
  3. __DIR__
  4. __FUNCTION__
  5. __CLASS__
  6. __TRAIT__
  7. __METHOD__
  8. __NAMESPACE__
  9. ClassName::class


目录
相关文章
|
存储 PHP
PHP 常量
PHP 常量
42 0
|
PHP
PHP 变量
PHP 变量
35 0
|
29天前
|
存储 API PHP
|
5月前
|
Linux PHP Windows
蓝易云 - php环境变量的配置步骤
以上就是配置PHP环境变量的步骤,希望对你有所帮助。
39 0
|
6月前
|
存储 PHP
【PHP入门】1.2-常量与变量
【PHP入门】1.2-常量与变量
【PHP入门】1.2-常量与变量
|
6月前
|
存储 PHP 容器
【PHP 开发专栏】PHP 基础语法与变量详解
【4月更文挑战第30天】本文概述了PHP的基础,包括脚本结构(&lt;?php至?&gt;标签)、注释(单行和多行)、数据类型(整型、浮点型、字符串型、布尔型、数组、对象)、运算符(算术、比较、逻辑)和流程控制(条件、循环语句)。还讨论了PHP变量的定义、作用域、类型转换及引用传递。了解这些基础知识对PHP编程至关重要,实践中不断学习和探索能提升Web开发技能。
57 2