互联网常识:PHP中如何利用define定义常量
发布时间:2025-05-24 05:25:21 发布人:远客网络
一、互联网常识:PHP中如何利用define定义常量
导读跟大家讲解下有关PHP中如何利用define定义常量,相信小伙伴们对这个话题应该也很关注吧,现在就为小伙伴们说说PHP中如何利用define定义
跟大家讲解下有关PHP中如何利用define定义常量,相信小伙伴们对这个话题应该也很关注吧,现在就为小伙伴们说说PHP中如何利用define定义常量,小编也收集到了有关PHP中如何利用define定义常量的相关资料,希望大家看到了会喜欢。
指程序中使用的数值是可以变化的量与之相反的是常量
被定义后在脚本的其他任何地方都不能被改变。
$value:常量的值;在PHP5中value必须是标量
$case_insensitive:如果设置为true
该常量则大小写不敏感。默认是大小写敏感的。PHP7.3.0
起废弃了定义大小写不敏感的常量。
输出:php.cnWarning:UseofundefinedconstantOk-assumed'Ok'b.不区分大小写
?phpdefine;echoOK."br";echoOk;?
输出:php.cnphp.cnc.允许是array
输出:woman以上就是PHP中如何利用define定义常量的详细内容!
二、在php中定义常量用户名为root密码为root
1、您好,您问的是phpStudy默认的用户名和密码都是root,那么默认的数据库名是?
2、phpStudy如何修改或重置MySQL密码, MySQL用户名和密码默认都是root。修改mysql密码:请使用『其他选项菜单』-『MySQL设置』-『设置或修改密码』。
3、这只是一个程序包,即把Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader集合打包的工具,不用你一个个折腾安装就可以立即学习PHP的环境工具,是不可以用作生产环境的,MySQL中的数据库默认的数据当然是自带的库,可以通过phpMyadmin来管理Mysql数据库,有什么库一目了然。
三、PHP定义空变量的意义
变量用于存储值,比如数字、文本字符串或数组。
一旦设置了某个变量,我们就可以在脚本中重复地使用它。
PHP中的所有变量都是以$符号开始的。
在 PHP中设置变量的正确方法是:
$var_name= value;PHP的入门者往往会忘记在变量的前面的$符号。如果那样做的话,变量将是无效的。
让我们试着创建一个存有字符串的变量,和一个存有数值的变量:
如果对于变量和常量的定义,你会注意几个方面呢?你可能会想到:
如何定义变量,它和C#等语言有什么不同呢?
1.如何定义变量,它和C#等语言有什么不同呢?
PHP中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。例如:
echo"$var,$VAR";//输出“Jim,Kimi"
?>你可能还关心变量的命名,其实和大多数语言一样。
注意,需要说明的一点是自PHP4以来,引入了引用赋值的概念,其实和多数语言的引用类似,不过我觉得最类似的是C/C++.因为它也用到了"&"符号。例如: 1<?php
2$foo='Bob';//赋值'Bob'给foo
3$bar=&$foo;//通过$bar引用.注意&符号
4$bar="My name is$bar";//修改$bar
7?>和其他语言一样,只能对有变量名的变量才可以引用。
预定义变量在PHP是一个重要的概念。 PHP提供了大量的预定义变量。由于许多这些变量依赖于运行的服务器的版本和设置,及其它因素,所以并没有详细的说明文档。一些预定义变量在 PHP以命令行形式运行时并不生效。
需要注意的是在PHP 4.2.0以及后续版本中,PHP指令 register_globals的默认值为 off。这是 PHP的一个主要变化。让 register_globals的值为 off将影响到预定义变量集在全局范围内的有效性。例如,为了得到 DOCUMENT_ROOT的值,将必须使用$_SERVER['DOCUMENT_ROOT']代替$DOCUMENT_ROOT,又如,使用$_GET['id']来代替$id从 URL 中获取 id值,亦或使用$_ENV['HOME']来代替$HOME获取环境变量 HOME的值。
从 PHP 4.1.0开始,PHP提供了一套附加的预定数组,这些数组变量包含了来自 web服务器(如果可用),运行环境,和用户输入的数据。这些数组非常特别,它们在全局范围内自动生效,例如,在任何范围内自动生效。因此通常被称为自动全局变量(autoglobals)或者超全局变量(superglobals)。(PHP中没有用户自定义超全局变量的机制。)超全局变量罗列于下文中;而且,你也将注意到旧的预定义数组($HTTP_*_VARS)仍旧存在。自 PHP 5.0.0起,长格式的 PHP预定义变量可以通过设置 register_long_arrays来屏蔽。
$GLOBALS包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。从 PHP 3开始存在$GLOBALS数组。
$_SERVER变量由 web服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组$HTTP_SERVER_VARS数组(依然有效,但反对使用)。
$_GET经由 URL请求提交至脚本的变量。类似于旧数组$HTTP_GET_VARS数组(依然有效,但反对使用)。
$_POST经由 HTTP POST方法提交至脚本的变量。类似于旧数组$HTTP_POST_VARS数组(依然有效,但反对使用)。
$_COOKIE经由 HTTP Cookies方法提交至脚本的变量。类似于旧数组$HTTP_COOKIE_VARS数组(依然有效,但反对使用)。
$_FILES经由 HTTP POST文件上传而提交至脚本的变量。类似于旧数组$HTTP_POST_FILES数组(依然有效,但反对使用)
$_ENV执行环境提交至脚本的变量。类似于旧数组$HTTP_ENV_VARS数组(依然有效,但反对使用)。
$_REQUEST经由 GET,POST和 COOKIE机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini中的 variables_order配置指示来定义。此数组在 PHP 4.1.0之前没有直接对应的版本。参见 import_request_variables()。
$_SESSION当前注册给脚本会话的变量。类似于旧数组$HTTP_SESSION_VARS数组(依然有效,但反对使用)
每个变量都有应用范围,那么PHP是怎么定义的呢?还是先看看下面代码吧:
6 echo"The".$index." number is".$var."<br>";
10?>你认为以上的代码会显示什么结果呢?
The 2 number is 2不好意思,你的结果是错误的。
The 2 number is 1那么你从其中发现了什么呢?我们可以知道虽然第2行的代码定义在外面,但第5行的变量和它是不一样的。第5行的变量仅在这个函数里使用。进一步的,如果我想调用第一行的变量而显示结果2.代码可以如下:
7 echo"The".$index." number is".$var."<br>";
11?>这个代码段和上面的代码段有何区别呢?注意第5行,多了一个global关键字。明白了吧。
那么还有没有其他方法呢?答案是肯定的。
6$GLOBALS["var"]=$GLOBALS["var"]+1;
7 echo"The".$index." number is".$GLOBALS["var"]."<br>";
11?>代码有什么特殊的吗?那就是用到了$GLOBALS这个超全局变量。
PHP也有静态变量的说法。不过静态变量一般用在函数里,只能是局部变量了。看看下面代码吧:
PHP还有一个相当令人兴奋的特性:可变变量
所谓可变变量,就是一个变量的变量名可以动态的设置和使用。
5?>输出的结果居然是hello,world.太神奇了。$$a其实就是$hello,因为$a的值是hello。
PHP的常量是不是前面加const呢?让我们看一看。
不是的。在PHP必须用下面的方式定义。
bool define( string name, mixed value [, bool case_insensitive])
name为常量名,value为常量的值。case_insensitive]为大小写敏感。默认为敏感。例如:
2 define("CONSTANT","Hello world.");
3 echo CONSTANT;// outputs"Hello world."
4 echo Constant;// outputs"Constant" and issues a notice.
6 define("GREETING","Hello you.", true);
7 echo GREETING;// outputs"Hello you."
8 echo Greeting;// outputs"Hello you."
常量只能用 define()函数定义,而不能通过赋值语句;
常量可以不用理会变量范围的规则而在任何地方定义和访问;
常量一旦定义就不能被重新定义或者取消定义;
?>PHP是一门松散类型的语言(Loosely Typed Language)
在 PHP中,不需要在设置变量之前声明该变量。
在上面的例子中,您看到了,不必向 PHP声明该变量的数据类型。
根据变量被设置的方式,PHP会自动地把变量转换为正确的数据类型。
在强类型的编程语言中,您必须在使用前声明变量的类型和名称。
在 PHP中,变量会在使用时被自动声明。
two=&$one;//相当于传地址,两个变量指向一个地址
echo$three."<br>";//输出"two"
echo$$three."<br>";//输出"one"
echo$$$three."<br>";//输出"######"
//2种特殊类型:资源类型 resource
//1.单引号和双引号都可以声明字符串
//3.在双引号的字符串中,既可以直接解析变量,又可以直接使用转义字符(可以转义单引号本身,也可以转义转义字符"")
//4.在单引号的字符串中,不可以直接解析变量,也不可以使用转义字符
//5.在双引号中不能再使用双引号,在单引号中不能再使用单引号
//定界符声明字符串,大量字符串
//test是自定义的一个字符串,后面不能有任何字符,空格也不可以
//也要以test这个自定义的字符串结束,结束前不能有任何字符