Pemalar dan pembolehubah PHP menggunakan pemalar untuk menyekat pengguna daripada melangkau fail tertentu

Chang-Cina secara literal bermaksud: tahan lama, tidak berubah untuk masa yang lama.

Malar mudah diterjemahkan: nilai yang tahan lama.

[Pengetahuan utama] Kami mentakrifkan tahap pengetahuan sebagai: tahap senyap

Skop penggunaan pemalar adalah sangat luas. Kami akan menggunakan pemalar pada masa hadapan untuk menentukan direktori kerja kami, mentakrifkan beberapa ciri kata laluan akaun, nombor versi, dsb. Jadi ilmu ini sangat penting.

Takrifan dan kaedah penulisan pemalar dalam kod:

takrifkan (nama pemalar, nilai pemalar)

Nota:

1. Nilai malar hanya boleh menjadi skalar yang kita bincangkan dalam bab sebelumnya.

2. Nama tetap boleh menjadi huruf kecil, tetapi biasanya huruf besar

3. Nama tetap boleh tanpa tanda petikan, tetapi biasanya dengan tanda petikan.

4. Apabila memanggil pemalar dalam rentetan, ia mesti berada di luar tanda petikan

5. Adalah disyorkan bahawa nama pemalar hanya menggunakan huruf dan garis bawah

Mari bereksperimen dengan kod:

1 Cuba tentukan dan panggil pemalar

<?php

define('MY_NAME','PHP中文网');

echo MY_NAME;
//下面是错误的调用方式
echo '我的名字是MY_NAME';
//正确的调用方式该这么写
echo '我的名字是' . MY_NAME;
?>

2 Beri perhatian kepada eksperimen projek

<?php
//其实可以小写,但是不好区分,所以我们规定通常大写
define('xiaoxie',true);
echo xiaoxie;

//常量可以在外面不加引号
define(YH,'不要对未来迷茫,迷茫的时候静下心来coding');
echo YH;

//只能用标量,我在后面用了一个数组,大家学一下就行,会报错的哟
define('BIAO',array(1,2,3));

?>

Selain itu, sistem juga telah menyediakan beberapa terbina dalam. pemalar untuk kita. Pemalar ini ditentukan. Mari kita kenali beberapa dahulu. Terdapat lebih banyak pemalar sistem yang telah kami pelajari dalam jilid sebelumnya. Selepas bermula, kami akan menambah dan mempelajarinya secara perlahan.

< tr>
Nama tetapPenerangan
常量名说明
LINE当前所在的行
FILE当前文件在服务器的路径
FUNCTIOIN当前函数名
CLASS当前类名
METHOD当前成员方法名
PHP_OSPHP运行的操作系统
PHP_VERSION当前PHP的版本
TRAITTrait 的名字,php5.4新加
DIR文件所在的目录
NAMESPACE当前命名空间的名称(区分大小写)
LINE<🎜>
Barisan semasa
<🎜>FAIL<🎜>Fail semasa ialah dalam laluan Pelayan
<🎜>FUNCTIOIN<🎜>Nama fungsi semasa
<🎜 >KELAS<🎜>Nama kelas semasa
<🎜>KAEDAH<🎜>Nama kaedah ahli semasa
PHP_OSSistem pengendalian yang dijalankan PHP
PHP_VERSIONSekarang versi PHP
<🎜>TRAIT<🎜>Nama Trait, ditambah dalam php5.4
<🎜>DIR<🎜>Direktori tempat fail terletak
<🎜>NAMESPACE<🎜>Nama ruang nama semasa (sensitif huruf besar-kecil)

Fungsi yang ditakrifkan() digunakan sebagai mekanisme keselamatan

Anda tidak perlu menguasai pengetahuan di sini. Selepas mempelajari fungsi tersebut, anda boleh melihat bahagian kod ini semula.

defined() Mari kita pelajari penggunaan ini, terutamanya untuk menghalang orang lain daripada memintas fail semakan keselamatan.

Fungsi: ditakrifkan (malar)
Fungsi: Lulus pemalar selepas kurungan fungsi Jika pemalar ditakrifkan, ia akan kembali benar, jika tidak ia mengembalikan palsu

[Simulasi Senario. ] Andaikata, kami Set perisian e-mall dalam talian ini memerlukan pembayaran Menyemak sama ada pembayaran dibuat dengan menyemak kebenaran perisian versi.php mempunyai fungsi menyemak kebenaran yang telah kami tetapkan tiada kebenaran untuk menyemak versi fail PHP tidak boleh menggunakan perisian ini. Semua kod termasuk version.php. Dan untuk mengelakkan seseorang daripada cetak rompak, saya juga boleh menyulitkan kod version.php.

Kami mempunyai dua fail:

1 Terdapat nombor versi, pernyataan versi dan pernyataan kebenaran di tengah-tengah satu fail. Nama fail ialah versi.php

2. Contohnya: pendaftaran pengguna, log masuk, dsb., nama fail ialah pengguna.php

Apakah yang perlu kita lakukan? ——Maksudnya, jika fail version.php tidak disertakan, kod selepas users.php akan dilaksanakan.

Mari kita jalankan percubaan:
fail version.php

<?php

//此处是检查是否是否授权的业务部份代码xxxx
define('AUTH',true);

//略过模拟代码xxx行

?>

users.php

<?php
//尝试将include 'version.php'这一行代码注释后再执行看看,对比结果
include 'version.php';

if(!defined('AUTH')){
   echo '非法!非法!你尝试跳过授权文件';
   exit;
}


//模拟后面用户注册和用户登陆的代码xxx行
echo '用户注册';
?>

Hasil percubaan menunjukkan bahawa version.php mesti disertakan, jika tidak, ia akan tidak dipaparkan Gema berikut 'Pendaftaran pengguna';


sertakan
sebutan: [ɪnˈklud]
penjelasan: mengandungi

versi
sebutan: [ˈvɜ: ʃn]
Penjelasan: Versi

pengguna
Sebutan: [ˈjuzɚ]
Penjelasan: Pengguna
Plural: pengguna

takrifkan
Sebutan: [dɪˈfaɪn]
Penjelasan: Tentukan fungsi

: include('pass in file path and file name')
function: Fungsi fungsi ini adalah untuk lulus dalam fail dengan laluan yang ditentukan dan biarkan PHP menyertakan ia untuk pelaksanaan
Nota: Dalam bab berikut, kami akan menerangkan dan bereksperimen secara khusus dengan memasukkan

Meneruskan pembelajaran
||
<?php define('MY_NAME','PHP中文网'); echo MY_NAME; //下面是错误的调用方式 echo '我的名字是MY_NAME'; //正确的调用方式该这么写 echo '我的名字是' . MY_NAME; ?>
  • Cadangan kursus
  • Muat turun perisian kursus