3_PHP表达式_1_常量
以下为学习孔祥盛主编的《PHP编程基础与实例教程》(第二版)所做的笔记。
PHP常量分为自定义常量与预定义常量。
1.自定义常量
在使用前必须先定义,PHP的define()函数专门用于定义自定义常量,define()函数的语法格式为:define(name,value[,boolean case_insensitive])。
函数功能:定义一个名字为name,值为value的常量。case_insensitive参数的默认值为FALSE,表示常量名name大小写敏感(区分大小写);case_insensitive参数值如果为TRUE,表示常量名name大小写不敏感(不区分大小写)。
函数说明:常量名name为字符串类型数据,常量值value必须是标量数据类型数据。
( 注意:函数的语法格式中某个参数使用 “ [ ] ”括起来,表示该参数是 “ 可选参数 ” (不是必需的) 。 )
<?php
//定义DATABASE常量,此时DATABASE常量名大小写敏感
define("DATABASE","student");
//定义USER_NAME常量,此时USER_NAME大小写敏感
define("USER_NAME","root",FALSE);
//定义PASSWORD常量,此时PASSWORD大小写不敏感
define("PASSWORD","root",TRUE); //输出:student
echo DATABASE;
echo"<br/>";
//输出:root
echo USER_NAME;
echo"<br/>";
//输出:root
echo password;
?>
输出:
Deprecated: define(): Declaration of case-insensitive constants is deprecated in D:\phpStorm_Save\first\helloworld.php on line 7
student
root Deprecated: Case-insensitive constants are deprecated. The correct casing for this constant is "PASSWORD" in D:\phpStorm_Save\first\helloworld.php on line 16
root
常量的定义需要注意以下几点:
1.常量必须使用define()函数定义,常量名前面不加前缀美元‘$’符号。
2.常量名由字母或者下画线开头,后面跟上任意数量的字母、数字或者下画线。
3.常量名可以是全部大写、全部小写或者大小写混合,但一般习惯是全部大写。
4.常量的作用域是全局的,不存在使用范围的问题,可以在程序任意位置进行定义和使用。
5.常量一旦被定义,其值不能在程序运行过程中修改,也不能被销毁。例如,程序如下
1 <?php
2 define("DATABASE","student");
3 //重新定义DATABASE常量,此时将出现Notice信息
4 define("DATABASE","root");
5
6 //输出:student
7 echo DATABASE;
8 ?>
输出:
Notice: Constant DATABASE already defined in D:\phpStorm_Save\first\helloworld.php on line 4
student
从程序运行结果来看,PHP产生Notice信息后,并不会影响程序的继续运行。
2.预定义常量
PHP预定义了许多常量,这些常量无需使用define()函数定义,可直接在程序中使用。下面列举了一些常用的PHP预定义常量。
(1)__FILE__(FILE前后分别是两个下画线):当前正在处理的脚本文件名,若使用在一个被引用的文件中(include或require),那么 它的值就是被引用的文件,而不是引用它的那个文件。
(2)__LINE__(LINE前后分别是两个下画线):正在处理的脚本文件的当前行数。
(3)PHP_VERSION:当前PHP预处理器的版本,如5.4.16。
(4)PHP_OS: PHP所在的操作系统的类型。如Linux。
(5)TRUE:表示逻辑真。FALSE:表示逻辑假。NULL:表示没有值或值不确定。
(6)DIRECTORY_SEPARATOR: 表示目录分隔符,UNIX或Linux操作系统环境时的值为“ / ”, Window操作系统环境时的值为 “ \ ”。
<?php
echo __FILE__;
echo "<br/>";
echo __LINE__;
echo "<br/>";
echo PHP_VERSION;
echo "<br/>";
echo PHP_OS;
echo "<br/>";
echo DIRECTORY_SEPARATOR;
?>
输出:
D:\phpStorm_Save\first\helloworld.php
4
7.3.5
WINNT
\
3_PHP表达式_1_常量的更多相关文章
- 3_PHP表达式_3_有关变量或常量状态的函数
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. 1. 数据类型查看函数 PHP为变量或常量提供了查看数据类型的函数,其中包括gettype()和var_dump( ...
- 3_PHP表达式_4_PHP运算符
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. 3.4.1 算术运算符 <?php $num1 = -10; $num2 = -4; $num3 = $nu ...
- 错误提示:在此上下文中不允许使用名称 "***"。有效表达式包括常量、 常量表达式和变量(在某些上下文中),不允许使用列名。
出现这种情况的原因,是因为在SQL语句的编写格式不正确. 事例展示: 错误: string sql = "insert into person ([name], sex, salary) v ...
- 3_PHP表达式_5_数据类型转换_类型强制转换
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP类型转换分为类型自动转换和类型强制转换. 3.5.2 类型强制转换 类型强制转换允许编程人员手动将变量的数据 ...
- 3_PHP表达式_5_数据类型转换_类型自动转换
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP类型转换分为类型自动转换和类型强制转换. 1.布尔型数据参与算数运算时,TRUE被转换为整数1,FALSE被 ...
- 3_PHP表达式_2_变量
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP变量可分为自定义变量和预定义变量. 以下所谈到的变量均为自定义变量. 1.变量的基本概念 PHP的变量名遵循 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_1_函数式编程思想概述
函数式编程和面向对象的区别
- C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏
二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...
- C:常量、变量 、 表达式 、运算符、 枚举
常量 变量 表达式 运算符 枚举 1.布尔类型只有真和假 2运算符 >,<,<=,>=,==,!=.判断两个数是否相等要使用双等号‘==’.逻辑运算符的表达式结果非真即假,&a ...
随机推荐
- 微信jaapi签名
public WeiXinJsSignature(string weixinUrl) { //string url = ConfigurationManager.AppSettings["U ...
- pytorch transforms.Lambda的使用
当你想要对图像设置transforms策略时,如: from torchvision import transforms as T normalize = T.Normalize([0.485, 0. ...
- k8s记录-etcd集群部署(三)
https://blog.csdn.net/fy_long/article/details/86542872 1)程序准备tar xvf etcd-v3.3.11-linux-amd64.tar.gz ...
- 宣化上人:大佛顶首楞严经四种清净明诲浅释(6-7)(转自学佛网:http://www.xuefo.net/nr/article23/230700.html)
大佛顶首楞严经四种清净明诲浅释(6) 唐天竺·沙门般剌密帝译 宣化上人主讲 一九八三年四月十七日晚讲于万佛圣城 是故阿难!若不断杀修禅定者,譬如有人,自塞其耳,高声大叫,求人不闻,此等名为欲隐弥露.清 ...
- centos 7 修改计算机名
[root@centos7 ~]$ hostnamectl set-hostname test.xyz.com # 使用这个命令会立即生效且重启也生效 [root@centos7 ~]$ host ...
- Docker快速入门——Docker-Compose
一.Docker-Compose简介 1.Docker-Compose简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.Docker-Com ...
- Vue 项目中的ESlint语法报错问题
在项目中的""和;经常会报错,真的很纠结,今天看到一个解决方法,可以不用卸载删除 在项目根目录中,新建一个.prettierrc文件,来移除分号,和替换为单引号. { " ...
- NLP | 算法 学习资料整理
UPDATE TIME: 2019-12-12 17:06:32 NLP: 对话系统: [ ] https://www.cnblogs.com/jiangxinyang/p/10789512.html ...
- centos7修改yum源为阿里镜像
参考博客: https://blog.csdn.net/kxwinxp/article/details/78578492 https://blog.csdn.net/inslow/article/de ...
- 在linux上cuda9.0 cudnn7.* 安装python3.6 tensorflow 1.5.1
链接:https://www.jianshu.com/p/bcf37d0e4e9b 为了入门机器学习的小伙伴能安装好工具,特制作此教程 按照 Anaconda 下载网站上的说明下载并安装 Anacon ...