好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>CMS系统>Dedecms
<tfoot draggable='sEl'></tfoot>

php变量和常量 php中常量

很多站长朋友们都不太清楚php变量和常量,今天小编就来给大家整理php变量和常量,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 PHP中怎么定义常量与变量 2、 PHP如何添加预定义常量或变量 3、 如何获得一个PHP进程中的所有全局变量和常量 4、 php 变量/常量问题 5、 什么是PHP变量? 6、 php变量定义方法 PHP中怎么定义常量与变量

使用define() 函数设置常量,如定义常量 GREETING:

<?php

define("GREETING", "Welcome to DTMobile!");

echo GREETING;

?>

变量定义:变量名=$+标示符,如定义变量a:

<?php

$a = 1;

echo $a;

?>

PHP如何添加预定义常量或变量

常量使用define语句定义即可

全局变量可以定义到全局变量数组$GLOBALS中

参考手册 : ...

看题主的问法,感觉"环境变量"可能符合题主要求

nginx配置PHP server的时候可以增加以下指令

fastcgi_param CUSTOM_ENV_VAR "my_env_value";

之后只要是通过nginx访问的PHP请求,在任何代码中中使用 $_SERVER['CUSTOM_ENV_VAR'] 就能取到你需要的值

又或者在fastcgi的配置文件中增加一行:

env[CUSTOM_ENV_VAR]="my_env_value"

之后只要是php-fastcgi处理的PHP文件,都可以通过 getenv('CUSTOM_ENV_VAR'); 来获取设置的值

如果题主确实打算不亲自define而要得到类似E_ALL那样的常量的话,就需要写点C了

题主可以新建一个自己的扩展(或者直接随便找个你会编译的扩展也行),在PHP_MINIT_FUNCTION中使用以下宏来定义自己的常量

REGISTER_STRINGL_CONSTANT("MY_SITE_VERSION", "1.0", 3, CONST_PERSISTENT);

之后重新编译PHP即可.

如何获得一个PHP进程中的所有全局变量和常量

$GLOBALS --- 保存所有全局变量(只在当前页面中的)

get_defined_vars() --- 返回由所有已定义变量所组成的数组(包括全局变量,超全局变量等)

get_defined_constants() --- 返回由所有已定义常量所组成的数组

Superglobals — Superglobals are built-in variables that are always available in all scopes

$GLOBALS — References all variables available in global scope

$_SERVER — Server and execution environment information

$_GET — HTTP GET variables

$_POST — HTTP POST variables

$_FILES — HTTP File Upload variables

$_REQUEST — HTTP Request variables

$_SESSION — Session variables

$_ENV — Environment variables

$_COOKIE — HTTP Cookies

$php_errormsg — The previous error message

$HTTP_RAW_POST_DATA — Raw POST data

$http_response_header — HTTP response headers

$argc — The number of arguments passed to script

$argv — A

参考资料:php手册 :php.net/manual/en/reserved.variables.php

php 变量/常量问题

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

define("haha","hello!");

echo haha;

输出hello!

变量总是传值赋值。那也就是说,当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量。

$haha=hoho;

echo $haha;

会输出hoho

静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。

给你看个例子:

这个没用静态变量<?PHP

function Test()

{

$haha= 0;

echo $haha;

$haha++;

}

?>

这里边的变量加一是没用的,在调用这个函数时会输出“0”,但这个变量在函数外是不存在的,在看看下边的

function Test()

{

static $haha= 0;

echo $haha;

$haha++;

}

?>

现在,每次调用 Test() 函数都会输出 $haha 的值并加一。

不知道我说的对你有用没

什么是PHP变量?

常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为大小写敏感。按照惯例常量标识符总是大写的。(更多PHP知识相关推荐阅读:什么是PHP开发?PHP开发都用什么工具?)

常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线。用正则表达式是这样表达的:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*

注: 在这里,字母是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符。

和 superglobals 一样,常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量。有关作用得更多信息请阅读手册中的变量范围。

语法

可以用 define() 函数来定义常量。一个常量一旦被定义,就不能再改变或者取消定义。

常量只能包含标量数据(boolean,integer,float 和 string)。

可以简单的通过指定其名字来取得常量的值,不要在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数 constant() 来读取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。

注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。

如果使用了一个未定义的常量,PHP 假定你想要的是该常量本身的名字,如同你用字符串调用它一样(CONSTANT 对应 "CONSTANT")。此时将发出一个 E_NOTICE 级的错误。参见手册中为什么 $foo[bar] 是错误的(除非你事先用 define() 将 bar 定义为一个常量)。如果你只想检查是否定义了某常量,用 defined() 函数。

常量和变量不同:

常量前面没有美元符号($);

常量只能用 define() 函数定义,而不能通过赋值语句;

常量可以不用理会变量范围的规则而在任何地方定义和访问;

常量一旦定义就不能被重新定义或者取消定义;

常量的值只能是标量。

以上来自上海优就业老师进行的总结,关于上海IT培训PHP开发更多了解:网页链接

php变量定义方法

PHP语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。以下是为大家分享的php变量定义方法,供大家参考借鉴,欢迎浏览!

1.定义常量define("CONSTANT", "Hello world.");

常量只能包含标量数据(boolean,integer,float 和 string)。

调用常量时,只需要简单的用名称取得常量的值,而不能加“$”符号,如:echo CONSTANT;

注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。

2.普通变量$a = "hello";

3.可变变量(使用两个美元符号($))

$$a = "world";

两个变量都被定义了:

$a 的内容是“hello”并且 $hello 的内容是“world”。

因此,可以表述为:

echo "$a ${$a}";或者 echo "$a $hello";它们都会输出:hello world

要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,解析器需要知道是想要 $a[1] 作为一个变量呢,还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。

4.静态变量

在函数内部static $a = 0;

注意:声明中用表达式的结果对其赋值会导致解析错误如static $a =3+3;(error)

静态变量仅在局部函数域中存在(函数内部),函数执行完之后,变量值不会丢失,可用于递归调用

5.全局变量

在函数体内定义的global变量,函数体外可以使用,在函数体外定义的global变量不能在函数体内使用,在全局范围内访问变量可以用特殊的 PHP 自定义 $GLOBALS 数组:

如:$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];

在一个函数域内用 global 语句导入的一个真正的全局变量实际上是建立了一个到全局变量的引用

global $obj;

注:对于变量的 static 和 global 定义是以 应用 的方式实现的

6.给变量赋值:传地址赋值(简单引用):

$bar = $foo; //加符号到将要赋值的变量前

改动新的变量将影响到原始变量,这种赋值操作更加快速

注意:只有命名变量才可以传地址赋值

注意:如果

$bar = $a;

$bar = $foo;

改变$bar的值只能改变变量foo的值,而不改变a的值(引用改变了)

7.PHP 超全局变量$GLOBALS : 包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键标为全局变量的 名称。从 PHP 3 开始存在 $GLOBALS 数组。

$_SERVER : 变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用)。

$_GET : 经由 HTTP GET 方法提交至脚本的变量。

$_POST : 经由 HTTP POST 方法提交至脚本的变量。

$_COOKIE : 经由 HTTP Cookies 方法提交至脚本的变量。

$_FILES : 经由 HTTP POST 文件上传而提交至脚本的变量。

文件上传表单中要有 enctype="multipart/form-data"

$_ENV : 执行环境提交至脚本的变量。

$_REQUEST :经由 GET,POST 和 COOKIE 机制提交至脚本的.变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。该数组没有直接模拟 PHP 4.1.0 的早期版本。参见 import_request_variables()。

注意: 自 PHP 4.3.0 起,$_FILES 中的文件信息不再存在于 $_REQUEST 中。

$_SESSION :当前注册给脚本会话的变量。

如何禁用phpinfo():

php.ini中

disable_functions = phpinfo()

重启web服务器。

php中的常量

常量只能用define(常量名,常量值);

常量只能包含标量数据(boolean,integer,float 和 string)。

可以简单的通过指定其名字来取得常量的值,不要在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数

constant() 来读取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。

注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。

如果使用了一个未定义的常量,PHP 假定想要的是该常量本身的名字,如同用字符串调用它一样(CONSTANT 对应 "CONSTANT")。此时将发出一个 E_NOTICE 级的错误。参见手册中为什么 $w3sky[bar] 是错误的(除非事先用 define() 将 bar 定义为一个常量)。如果只想检查是否定义了某常量,用 defined() 函数。

常量和变量不同:

* 常量前面没有美元符号($);

* 常量只能用 define() 函数定义,而不能通过赋值语句;

* 常量可以不用理会变量范围的规则而在任何地方定义和访问;

* 常量一旦定义就不能被重新定义或者取消定义;

* 常量的值只能是标量。

定义常量

<?PHP

define("CONSTANT", "Hello world.");

echo CONSTANT; // outputs "Hello world."

echo Constant; // outputs "Constant" and issues a notice.

?>

关于php变量和常量的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php变量和常量 php中常量的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did167712
更新时间:2023-03-31   阅读:23次

上一篇: php哪个框架最好 php最好用的框架

下一篇:php乱码算法 phpstudy乱码

相关资讯

最新资料更新

  • 1.织梦DedeCMS在实现中英文导航功能方法步骤
  • 2.织梦Dedecms设置伪静态详细方法
  • 3.dedecms 栏目目录用首字母生成的方法
  • 4.详解DEDECMS后台会员消费记录人性化时间显示不准的解决方法
  • 5.dedecms5.7使tag调用的标签正序排列的方法
  • 6.织梦DEDECMS dede:arclist,dede:list获取附加表字段内容的方法
  • 7.Dedecms网站地图获取文章列表支持标签调用的方法
  • 8.织梦栏目有缓存导致刚发布的文章条数和分页不同步处理方法
  • 9.详解火车头采集器免登录采集数据发布到DEDECMS织梦的方法
  • 10.dede5.7解决senddate比pubdate时间晚的问题
  • 11.dedecms建站设置自动内链的方法
  • 12.dedecms织梦系统$GLOBALS定义文件在哪
  • 13.织梦DEDEEIMS标签不能嵌套的2种解决方法
  • 14.dedecms使用sql语句调用文章静态链接地址的方法
  • 15.详解织梦调用当前顶级栏目名称、ID、url方法
  • 16.Linux下安装DedeCMS及安全设置教程
  • 17.dedecms三级栏目调用方法
  • 18.织梦dedecms在模板页面中实现会员登录退出状态显示的方法
  • 19.使用织梦cms做多语言的网站(图解)
  • 20.Dedecms获取登录用户名与ID号的方法

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]