美文网首页
PHP变量与常量

PHP变量与常量

作者: 码一 | 来源:发表于2022-05-30 10:38 被阅读0次

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

变量

命名

有数字、字母、下划线组成,不能以数字开头,用正则表达式描述为^[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';
 
function c()
{
    /*
     * 函数内部的变量是跟函数外部的隔离的
     * 通过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';
 
// 类属性也可以通过这种方式访问
class Test
{
    public $hello = 'class inner';
}
(new Test())->$a;
(new Test())->{$b[0]};

常量

命名

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

定义常量

<?php
/*
 * 可以使用define()、const定义常量
 * 常量值只能是标量或数组,一但被定义,其值便无法更改
 *
 * const定义常量是在预编译阶段执行的,所以必须处于最顶端的作用域。这就是说不能在函数、循环、try/catch语句内使用
 */
const BOOK_TOTAL = 20;    
define('PRICE', 200);
 
class Test
{
    const BOOKS = [];
}    
 
$a = 'PRICE';
echo constant($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 变量与常量

    1.变量: a.定义:指没有固定的值,可以改变的值 b.命名规则: 变量以 $ 符号开始,后面跟着...

  • PHP变量与常量

    本文是复习所写,并不会涵盖一些基础知识点 变量 命名 有数字、字母、下划线组成,不能以数字开头,用正则表达式描述为...

  • php简明手册

    # **PHP简明手册** ## **变量 和 常量** > 1. 变量和常量是PHP中最基本的数据存储单元,它们...

  • PHP 学习总结一

    php 常量的申明: php 全局变量的申明和使用: ...

  • PHP的变量与常量

    弱类型语言PHP PHP是一种非常弱的类型语言。在大多数编程语言中,变量只能保持一种类型的数据,而且这个类型必须在...

  • 从0到1学习网络安全 【PHP基础-常量】

    PHP 常量 常量类似变量,但是常量一旦被定义就无法更改或撤销定义。 PHP 常量 常量是一个简单值的标识符。该值...

  • PHP学习线路图

    PHP教程 PHP教程PHP简介PHP环境设置PHP语法概述PHP变量类型PHP常量类型 PHP运算符类型PHP ...

  • PHP学习

    PHP内建函数-php真正的威力 php魔术变量PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是...

  • PHP学习线路图 PHP教程

    PHP学习线路图 PHP教程 PHP教程PHP简介PHP环境设置PHP语法概述PHP变量类型PHP常量类型 PHP...

网友评论

      本文标题:PHP变量与常量

      本文链接:https://www.haomeiwen.com/subject/ufkoprtx.html