Constantes du d...LOGIN

Constantes du didacticiel de base du développement PHP

Concept

La constante peut être comprise comme : une valeur durable Une fois la valeur constante définie, elle ne peut être modifiée nulle part ailleurs dans le script.


1. Composition des constantes

La forme écrite des constantes est définie (nom de la constante, constante)

Remarque :

  • Les noms de constantes peuvent être en minuscules, mais généralement en majuscules.

  • Les noms de constantes peuvent être sans guillemets, mais généralement entre guillemets.

  • Lors de l'appel d'une constante dans une chaîne, elle doit être en dehors des guillemets

  • Il est recommandé d'utiliser uniquement des lettres et des traits de soulignement pour noms de constantes

Définissons et appelons une constante :

Exemple :

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

Ensuite, vérifions plusieurs déclarations sur les constantes

Exemple :

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

Remarque 1 : La définition de la constante n'est pas citée et peut être sortie normalement, mais PHP nous rappellera que la définition n'est pas standardisée Ici Ntice

<. 🎜> peut l'éliminer en modifiant le fichier de configuration PHP. Si vous êtes intéressé, vous pouvez rechercher et essayer de le résoudre vous-même.

Remarque 2 : Les sept types de données mentionnés ci-dessus peuvent également être divisés en trois grandes catégories

Types de données scalaires : Booléen, Entier, flottant point, chaîne

Types de données composites : tableau, objet

Types de données spéciaux : NUll, type de ressource, fonction de rappel

Remarque 3 : Une fois qu'une constante est définie, il s'agit d'une variable globale par défaut et peut être utilisée n'importe où dans l'ensemble du script en cours d'exécution.


2. Quelques constantes intégrées

Le système a également préparé quelques constantes intégrées. pour nous. Ces constantes sont spécifiées. Commençons par nous familiariser avec quelques-unes. Il y a d'autres constantes système que nous avons étudiées dans le volume précédent. Après avoir commencé, nous les ajouterons et les apprendrons lentement.


Nom de la constante

Description

__LINE__

La ligne actuelle

__FILE__

Le chemin du fichier actuel sur le serveur

__FUNCTIOIN__

Nom de la fonction actuelle

__CLASS__

Nom actuel de la classe

__MÉTHODE__

                                                                                                                                                                    

PHP_OS


Le système d'exploitation sur lequel PHP fonctionne

PHP_VERSION

PHP actuel La version de

__TRAIT__

Nom du trait, ajouté dans php5.4

__DIR__

Le répertoire où se trouve le fichier

__NAMESPACE__

Le nom de l'espace de noms actuel (sensible à la casse)


Exemple :

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

Remarque : Vous pouvez essayer d'en afficher quelques autres. Il y en a quelques-uns que vous n'avez pas encore appris. Vous apprendrez. plus dans les chapitres suivants. Introduction détaillée


3. Utilisez la fonction définie() comme mécanisme de sécurité

<. 🎜>Connu ici, je comprends juste pour l'instant. Après avoir appris la fonction, vous pouvez revoir cette partie du code.

définie() Apprenons cet usage, principalement pour empêcher d'autres personnes de contourner le fichier de contrôle de sécurité.

Fonction : définie (constante)

Fonction : Passe la constante après les parenthèses de la fonction Si la constante est définie, elle renvoie vrai, sinon elle renvoie faux

Hypothèse :

Nous disposons d'un ensemble de logiciels de centre commercial en ligne qui nécessitent un paiement. La vérification si le paiement est effectué se fait en vérifiant l'autorisation du logiciel. Le fichier version.php a pour fonction de vérifier l'autorisation que nous avons stipulée dans le logiciel. qu'il n'y a pas de fichier de contrôle d'autorisation. version.php ne peut pas utiliser ce logiciel. Tout le code inclut version.php. Et afin d'empêcher quelqu'un de pirater, je peux également crypter le code version.php.

Nous avons deux fichiers :

  • Il y a un numéro de version, une déclaration de version et une déclaration d'autorisation au milieu d'un fichier. Le nom du fichier est version.php

  • Un fichier contient des fonctions métier spécifiques. Par exemple : enregistrement d'utilisateur, connexion, etc., le nom du fichier est users.php

Que devons-nous faire ? ——C'est-à-dire que si le fichier version.php n'est pas inclus, le code après users.php sera exécuté.

Expérimentons :

Fichier 1.version.php

Le code est le suivant :

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

2.ser. php

Le code est le suivant :

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

Le résultat est que version.php doit être inclus, sinon l'écho 'User Registration' ne sera pas affiché ;

Remarque :

Fonction : include('Chemin du fichier d'entrée et nom du fichier')Fonction : La fonction de cette fonction est de transmettre le fichier avec le chemin spécifié et laissez PHP l'inclure pour l'exécution

Inclde sera expliqué en détail plus tardsection suivante

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