关于PHP常量的事项

目标读者

就像这篇文章一样。

定数的定义是什么?

确定的数字

「用于存放数据的容器」和「可命名」的特点与变量的作用相同。变量的一个重大区别是「不可重新赋值」。

使用固定数时与不使用固定数进行比较。

一旦定义了常量,可以在程序中重复使用。此外,这也方便增加维护性的优点。以下是比较不使用常量和使用常量两种情况下的代码对比。执行结果相同。

不使用常数的情况下。
<?php
    print (100 * 1.1).'<br>';
    print (200 * 1.1).'<br>';
    print (300 * 1.1).'<br>';

    /* 実行結果
        110
        220
        330
    */
?>
    • 1.1(消費税 10%)が、パッと見何の数値を表すのかがわからない(定数名が付いていない)

 

    もし消費税が変わった場合、1.1(消費税 10%)の所をすべて修正する必要がある(上の例では 3 箇所)
如果使用常数的情况下
<?php
    const SALES_TAX = 1.1;    // 消費税率が変わっても修正はこの行のみ
    print (100 * SALES_TAX).'<br>';
    print (200 * SALES_TAX).'<br>';
    print (300 * SALES_TAX).'<br>';

    /* 実行結果
        110
        220
        330
    */
?>
    • 定数 SALES_TAX(消費税 10%)を定義することで、数値の意味がわかりやすい

 

    消費税が変わっても修正は 1 箇所で済む(メンテナンスがラク)

声明常量

第一种方法是使用常数。
<?php
    const 定数名 = ;
?>
第二种方法是定义一个函数。
<?php
    define('定数名', );
?>

命名定数规则

    • ($) は付けない

 

    • 予約語は避ける

 

    • 通例、大文字で命名する

 

    定数として定義できる型は限定される
在给常量命名时,使用多个单词时,需要用下划线(_)进行分隔。
可以将可作为常量定义的类型限定为标量(包括布尔、整型、浮点型和字符串)和包含标量的数组。

自動的に定義される定数、マジック定数

PHP中存在着两种类型的常量:一种是“自动定义常量”,另一种是根据使用场景而变化的“魔术常量”。这些常量可以在不需要使用const进行声明的情况下直接使用。下表展示了主要的常量。

定数説明__LINE__実行中の行番号__FILE__実行中のファイル名__DIR__実行中のファイルが存在するディレクトリ名PHP_VERSIONPHP バージョンPHP_MAXPATHLENファイル名の長さ (パスを含む) の最大値PHP_INT_MAX整数型の最大値

这是佐藤在他的本地开发环境中的执行结果,仅供参考。

<?php
    print '__LINE__:'.__LINE__.'<br>';
    print '__FILE__:'.__FILE__.'<br>';
    print '__DIR__:'.__DIR__.'<br>';
    print 'PHP_VERSION:'.PHP_VERSION.'<br>';
    print 'PHP_MAXPATHLEN:'.PHP_MAXPATHLEN.'<br>';
    print 'PHP_INT_MAX:'.PHP_INT_MAX.'<br>';

    /* 実行結果
        __LINE__:2
        __FILE__:C:\パス\article3.php
        __DIR__:C:\パス
        PHP_VERSION:8.X.X
        PHP_MAXPATHLEN:2048
        PHP_INT_MAX:9223372036854775807(64 ビットの場合)
    */
?>

请参考以下网站

「自動設定的常量」,亦称「神奇常数」,除了之前介绍的之外,还存在许多其他常量。有关详细信息,请参阅以下网站。

    • 自動的に定義される定数

 

    マジック定数
广告
将在 10 秒后关闭
bannerAds