当前位置:首页 » 编程语言 » php获取常量

php获取常量

发布时间: 2022-04-22 07:46:37

php中如何定义常量及获取常量的值

用define()函数定义,在类外面。在类里面用const。至于用法,请在PHP手册中查找

② php如何是用define呢,让他起到全局的常量的作用

<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // outputs "Constant" and issues a notice.

define("GREETING", "Hello you.", true);
echo GREETING; // outputs "Hello you."
echo Greeting; // outputs "Hello you."

?>
注意大小写。
这样写便可全局。
若要在函数中,用此法也行:
globel wc;
wc="god";

③ php const用法详解 以及php常量定义const和define的异同

常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为大小写敏感。通常常量标识符总是大写的。

可以用 define() 函数来定义常量。在 PHP 5.3.0 以后,可以使用 const
关键字在类定义的外部定义常量,先前版本const
关键字只能在类(class)中使用。一个常量一旦被定义,就不能再改变或者取消定义。

常量只能包含标量数据(boolean,integer,float 和 string)。 可以定义 resource
常量,但应尽量避免,因为会造成不可预料的结果。

可以简单的通过指定其名字来取得常量的值,与变量不同,不应该在常量前面加上 $
符号。如果常量名是动态的,也可以用函数constant() 来获取常量的值。用

get_defined_constants()
可以获得所有已定义的常量列表。

常量和变量有如下不同:
·常量前面没有美元符号($);
·常量只能用 define() 函数定义,而不能通过赋值语句;
·常量可以不用理会变量的作用域而在任何地方定义和访问
·常量一旦定义就不能被重新定义或者取消定义;
·常量的值只能是标量。

Example #1 定义常量
<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // 输出 "Constant" 并发出一个提示性信息
?>

Example #2 使用关键字 const 定义常量
<?php
// 以下代码在 PHP 5.3.0 后可以正常工作
const CONSTANT = 'Hello World';
echo CONSTANT;
?>
Example #3 合法与非法的常量名
<?php
// 合法的常量名
define("FOO",
"something");
define("FOO2",
"something else");
define("FOO_BAR", "something more");
// 非法的常量名
define("2FOO",
"something");

//
下面的定义是合法的,但应该避免这样做:(自定义常量不要以__开头)
// 也许将来有一天PHP会定义一个__FOO__的魔术常量
// 这样就会与你的代码相冲突
define("__FOO__", "something");
?>

【问】在php中定义常量时,const与define的区别?

【答】使用const使得代码简单易读,const本身就是一个语言结构,而define是一个函数。另外const在编译时要比define快很多。

(1).const用于类成员变量的定义,一经定义,不可修改。define不可用于类成员变量的定义,可用于全局常量。
(2).const可在类中使用,define不能。
(3).const不能在条件语句中定义常量。
例如:

if (...){

const FOO =
'BAR'; //
无效的invalid

}
if (...)
{

define('FOO', 'BAR'); // 有效的valid

}
(4).const采用一个普通的常量名称,define可以采用表达式作为名称。

const FOO = 'BAR';
for ($i = 0;
$i < 32; ++$i) {

define('BIT_' . $i, 1 << $i);

}
(5).const只能接受静态的标量,而define可以采用任何表达式。
例如:

const BIT_5 = 1 <<
5; //
无效的invalid

define('BIT_5', 1 << 5); //
有效的valid
(6).const定义的常量时大小写敏感的,而define可通过第三个参数(为true表示大小写不敏感)来指定大小写是否敏感。
例如:

define('FOO', 'BAR', true);
echo FOO; //
BAR
echo foo; //
BAR

相关函数:

define —
定义一个常量

说明:
bool define ( string $name , mixed $value [,
bool $case_insensitive = false ]

参数:
name :常量名。
value :常量的值;仅允许标量和 null。标量的类型是 integer,
float,string 或者 boolean。 也能够定义常量值的类型为 resource ,但并不推荐这么做,可能会导致未

知状况的发生。
case_insensitive :如果设置为
TRUE,该常量则大小写不敏感。默认是大小写敏感的。比如, CONSTANT 和 Constant 代表了不同的值。(Note:
大小写不敏感的常量以小写

的方式储存。)

返回值:成功时返回 TRUE, 或者在失败时返回 FALSE.

constant —
返回一个常量的值
说明:
mixed constant ( string $name )

通过 name 返回常量的值。当你不知道常量名,却需要获取常量的值时,constant()
就很有用了。也就是常量名储存在一个变量里,或者由函数返回常量名。该函数也适用

class constants。
参数:
name :常量名。

返回值:
返回常量的值。如果常量未定义则返回 NULL。

defined —
检查某个名称的常量是否存在

说明:
bool defined ( string $name )

检查该名称的常量是否已定义。

Note: 如果你要检查一个变量是否存在,请使用 isset()。 defined()
函数仅对 constants 有效。如果你要检测一个函数是否存在,使用 function_exists()。

参数:
name :常量的名称。

返回值:
如果该名称的常量已定义,返回 TRUE;未定义则返回
FALSE。

get_defined_constants:

Returns an associative array with the names of all the constants
and their values

以关联数组返回常量名和常量的值。这包括那些由扩展以及由define()函数创建的常量。

④ 如何在PHP中使用常量指定PI的值计算圆的面积

实例说明
常量是PHP编程基础的重要组成部分,其作用是定义一个不会改变的值。本实例通过计算圆的面积向用户说明常量是如何定义和使用的,运行结果如下:
半径为10个单元的圆的面积314.15926
关键技术
PHP中通常使用define()函数来定义常量;使用constant()函数动态获取常量值;使用defined()函数判断一个常量是否已经定义;使用get_defined_constants()函数获取所有当前已经定义的常量。其中,define()函数的语法如下所示:
define():定义常量。
bool define(string name,mixed value[,bool case_insensitive]);
参数说明:
string name: 必选参数,常量名称,即标识符。
mixed value:必选参数,常量的值。
bool case_insensitive:可选参数,指定大小写是否敏感。设定为true,表示不敏感。
设计过程
(1)创建PHP脚本文件,首先通过define()函数定义常量,将数值“3.1415926”定义为常量名为PI的常量,然后定义数值型变量,将圆的半径设定为10个单位。最后通过echo语句输出圆的面积,其代码如下:
<?php
define("PI,3.1415926") //定义常量
$r=10; //定义圆半径
echo"半径为10个单位的圆的面积".PI*($r*$r); //定义圆面积
?>
(2)将该文件存储于\MR\02\044\文件夹下,命名为index.php.
秘笈心法
心法领悟044:使用define()定义常量的注意事项。
使用define()定义的常量一旦定义就不能改变或者取消。

⑤ thinkphp有没有获取当前域名的常量

肯定有;

每个框架语言中都会有相应的代表系统变量的常量,当然也可以自己定义;

其中的—ROOT— 即代表网站的域名!

⑥ thinkphp怎么调用常量

__PUBLIC__:会被替换成当前网站的公共目录 通常是 /Public/
__PUBLIC__ 只能在模板上使用的。
ThinkPHP常量

THINK_PATH 框架系统目录

APP_PATH //应用目录(默认为入口文件所在目录)
LIB_PATH //系统类库目录(默认为 THINK_PATH.'Library/')
CORE_PATH //系统核心类库目录 (默认为 LIB_PATH.'Think/')
MODE_PATH //系统应用模式目录 (默认为 THINK_PATH.'Mode/')
BEHAVIOR_PATH //行为目录 (默认为 LIB_PATH.'Behavior/')
<a href="https://www..com/s?wd=Common&tn=44039180_cpr&fenlei=-F_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">COMMON</a>_PATH //公共模块目录 (默认为 APP_PATH.'<a href="https://www..com/s?wd=Common&tn=44039180_cpr&fenlei=-F_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">Common</a>/')
VENDOR_PATH //第三方类库目录(默认为 LIB_PATH.'Vendor/')
RUNTIME_PATH //应用运行时目录(默认为 APP_PATH.'Runtime/')
HTML_PATH //应用静态缓存目录(默认为 APP_PATH.'Html/')
CONF_PATH //应用公共配置目录(默认为 <a href="https://www..com/s?wd=Common&tn=44039180_cpr&fenlei=-F_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">COMMON</a>_PATH.'Conf/')
LANG_PATH //公共语言包目录 (默认为 COMMON_PATH.'Lang/')
LOG_PATH //应用日志目录 (默认为 RUNTIME_PATH.'Logs/')
CACHE_PATH //项目模板缓存目录(默认为 RUNTIME_PATH.'Cache/')
TEMP_PATH //应用缓存目录(默认为 RUNTIME_PATH.'Temp/')
DATA_PATH //应用数据目录 (默认为 RUNTIME_PATH.'Data/')

⑦ php常量获取问题

constant 是获取可变常量 :
例如
$a = "1";
$b = $a;
echo constant($b);

就是这么用的

⑧ 如何获取php一个类中定义的常量

ReflectionClass::getConstants
自己翻手册。

⑨ php如何定义常量,系统常量和使用常量

定义常量

define('NAME','hello');
echoNAME;//hello

PHP 自 5.3 后可以直接通过 const 关键字来定义常量

constNAME='hello';
echoNAME;//hello

系统常量可以直接打印,如:

echo__DIR__;//当前执行文件的路径
echo__FILE__;//当前执行的文件地址及文件名

⑩ php 外部可以调用类中的常量吗

常量属性不能使用对象访问,仅能使用类访问,在类本体内,可以使用“self::常量名”,在类本体外可以使用“类名::常量名”。

<?php
classFoo{
constcon_var="常量属性的值不能被修改<br/>";
publicfunctionmethod_a(){
echo(self::con_var);
}
}
echo(Foo::con_var);
$myFoo=newFoo();
echo($myFoo->method_a());
?>
热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:333
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:374
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:609
java用什么软件写 发布:2025-05-18 03:56:19 浏览:30
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:105
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:940
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:736
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:800
网卡访问 发布:2025-05-18 03:35:04 浏览:507
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:369