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.
Nama tetap | Penerangan | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Barisan semasa | ||||||||||||||||||||||
<🎜>FAIL<🎜> | Fail semasa ialah dalam laluan Pelayan | ||||||||||||||||||||||
<🎜>FUNCTIOIN<🎜> | Nama fungsi semasa | ||||||||||||||||||||||
<🎜 >KELAS<🎜> | Nama kelas semasa | ||||||||||||||||||||||
<🎜>KAEDAH<🎜> | Nama kaedah ahli semasa | ||||||||||||||||||||||
PHP_OS | Sistem pengendalian yang dijalankan PHP | ||||||||||||||||||||||
PHP_VERSION | Sekarang 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