PHP 開発の基本的なチュートリアルの定数

コンセプト

定数は、長期的に持続する値として理解できます。定数値が定義された後は、スクリプト内の他の場所では変更できません。


1. 定数の構成

定数の書き方はdefine(定数名、定数)です

注:

  • 定数名は小文字でも構いませんが、通常は大文字でも構いません

  • 引用符は付けませんが、通常は引用符で囲みます。

  • 文字列内の定数を呼び出す場合は、引用符の外側にある必要があります

  • 定数名には文字とアンダースコアのみを使用することをお勧めします

定数を定義して呼び出してみましょう:

例:

<?php
//定义一个常量
define('Name','PHP.com');
//正确的调用方式
echo '我们是'.Name;
echo '<br/>';
//错误的调用方式
echo '我们是Name';
?>

次に、定数に関するいくつかのステートメントを検証してみましょう

例:

<?php
//其实可以小写,但是不好区分出来,所以习惯上大家都大写
define('age',27);
echo age;
//常量可以在外面不加引号
define(A,'安徽省');
echo A;
//只能用于标量,用于其他会报错,例如数组
define('HF',array(1,2,3));
echo HF;
?>

注 1: 定数の定義は引用符で囲まれていないため、通常どおり出力できますが、PHP は定義が標準化されていないことを通知します。ここでは Ntice

PHP 設定ファイルを変更することで解決できます。興味がある場合は、検索して自分で解決してみてください。

注2: 前述の7つのデータ型は、大きく3つのカテゴリに分類することもできます

スカラーデータ型: ブール、整数、浮動小数点、文字列

複合データ型: 配列、オブジェクト

特別なデータ型: NUll、リソースタイプ、コールバック関数

注 3: 定数が定義されると、それはデフォルトでグローバル変数となり、実行中のスクリプト全体のどこでも使用できます。


2. いくつかの組み込み定数

システムはいくつかの組み込み定数も用意しています。これらの定数を指定します。最初にいくつかのシステム定数について学びましょう。前編で学習したシステム定数がさらに増えました。開始したら、それらを徐々に追加して学習していきます。


Php_osPHP_VERSION__TRAIT__

定数名

説明

__LINE__

現在の行

__FILE__

サーバー上の現在のファイルのパス

__FUNCTIOIN__

現在の関数名

S__class__
現在のクラス名

__Method__

現在のメンバーメソッド名


PHP オペレーティング システム

現在のPHPバージョン

php5.4で追加されたトレイト名

ファイルが配置されているディレクトリ

__NAMESPACE__
現在の名前空間の名前(大文字と小文字が区別されます)


例:

<?php
//输出当前所在行
echo __LINE__;
echo "<br/>";
//输出当前文件所在服务器的路径
echo __FILE__;
echo "<br/>";
//输出当前PHP运行的操作系统
echo PHP_OS;
?>

注: いくつかはまだ学習していないので、次の章で詳しく紹介します

3.セキュリティメカニズムを作成するためのdefine()関数

ここでの知識は理解のためのものです。関数を学習した後、コードのこの部分をもう一度見ることができます。

define() 主に他の人がセキュリティチェックファイルをバイパスするのを防ぐために、この使用法を学びましょう。

関数: 定義された (定数)

関数: 関数の括弧の後に定数を渡します。定数が定義されている場合は true を返し、そうでない場合は false を返します

仮説:

オンラインの電子モール ソフトウェアがあります。支払いが必要かどうかの確認はソフトウェアの権限を確認することで行われ、権限確認ファイルのバージョンがないとソフトウェアを使用できないことをソフトウェア内で規定しています。 .php。すべてのコードには version.php が含まれています。また、誰かによる著作権侵害を防ぐために、version.php コードを暗号化することもできます。

2 つのファイルがあります:

1 つのファイルの真ん中に、バージョン番号、バージョン ステートメント、および認証ステートメントがあります。ファイル名は version.php です
  • ファイルには特定のビジネス機能が含まれています。例:ユーザー登録、ログインなど、ファイル名はusers.php
  • どうすればいいですか? ——つまり、version.php ファイルが含まれていない場合は、users.php 以降のコードが実行されます。
実験してみましょう:

1.version.php ファイル

コードは次のとおりです:

<?php
//此处是检查是否是否授权的业务部份代码xxxx
define('AUTH',true);
//略过模拟代码xxx行
?>

2.ser.php

コードは次のとおりです:

<?php
//尝试将include 'version.php'这一行代码注释后再执行看看,对比结果
include 'version.php';
if(!defined('AUTH')){
    echo '非法!非法!你尝试跳过授权文件';
    exit;
}

結果は、version.php が必要であるということです。含まれる場合は、次のエコー「ユーザー登録」が表示されません。

注:

関数: include('ファイルパスとファイル名を渡す')

関数: この関数の機能は、パスを指定したファイルに記述してPHPにインクルードさせて実行してください


Incldeについては後ほど詳しく説明します

学び続ける

||
<?php //定义一个常量 define('Name','PHP.com'); //正确的调用方式 echo '我们是'.Name; echo '<br/>'; //错误的调用方式 echo '我们是Name'; ?>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜