PHP调用另一个文件的常量,php常量和变量之用常量限制用户跳过某些文件

常——汉语字面为:长久,经久不变。

常量那就好翻译了:长久不变的值。

【重点知识】知识级别我们定义为:默写级

常量的使用范围非常广泛。我们在以后,定义我们的工作目录、定义一些特点的帐户密码、版本号等我们都会使用到常量。所以这一块的知识,非常重要。

常量在代码中的定义、书写方式:

define(常量名,常量值)

注:

1.常量值只能为上一章中我们讲到的标量。

2.常量名可以小写,但是通常大写

3.常量名可以不加引号,但是通常加上引号。

4.在字符串中调用常量的时候,必须在引号外面

5.常量名建议只用字母和下划线

我们用代码来实验一下:

1.定义和调用一次常量试试<?php

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

echo MY_NAME;

//下面是错误的调用方式

echo '我的名字是MY_NAME';

//正确的调用方式该这么写

echo '我的名字是' . MY_NAME;

?>

2.注意项目实验<?php

//其实可以小写,但是不好区分,所以我们规定通常大写

define('xiaoxie',true);

echo xiaoxie;

//常量可以在外面不加引号

define(YH,'不要对未来迷茫,迷茫的时候静下心来coding');

echo YH;

//只能用标量,我在后面用了一个数组,大家学一下就行,会报错的哟

define('BIAO',array(1,2,3));

?>

此外,系统还为我们准备了一些内置的常量。这些常量都是规定好的。我们先熟悉几个,还有更多的系统常量我们学习完上册,入门后再慢慢的增加和学习。常量名说明LINE当前所在的行

FILE当前文件在服务器的路径

FUNCTIOIN当前函数名

CLASS当前类名

METHOD当前成员方法名

PHP_OSPHP运行的操作系统

PHP_VERSION当前PHP的版本

TRAITTrait 的名字,php5.4新加

DIR文件所在的目录

NAMESPACE当前命名空间的名称(区分大小写)

defined()函数来做安全机制

此处知识,可以眼前不用掌握。学习完函数后,再来看本部份代码也可以。

defined()我们来学习这种用法,主是是为了防止其他人绕过安全检查文件。

函数:defined(常量)功能:向函数的括号后面传入常量,如果常量定义了就返回true,否则返回false

【情景模拟】假设,我们的这套在线电子商城的软件需要付钱,检查是否付费是通过对软件授权检查来完成的,而文件version.php中就有检查授权的功能,我们在软件中规定,没有授权检查文件version.php就不能使用这个软件。所有的代码都包含了version.php。并且为了防止有人盗版,我还可以把version.php的代码进行了加密。

我们有两个文件:

1.一个文件中间有版本号,版本声明和授权声明。文件名为version.php

2.一个文件中有具体的业务功能。例如:用户注册、登陆等,文件名为users.php

我们该怎么做呢?——也就是说不包含 version.php文件就不让,执行users.php之后的代码。

我们来进行实验:version.php文件<?php

//此处是检查是否是否授权的业务部份代码xxxx

define('AUTH',true);

//略过模拟代码xxx行

?>

users.php<?php

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

include 'version.php';

if(!defined('AUTH')){

echo '非法!非法!你尝试跳过授权文件';

exit;

}

//模拟后面用户注册和用户登陆的代码xxx行

echo '用户注册';

?>

实验结果可知:version.php必须要包含 ,不然不会显示后面的echo '用户注册';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值