静态函数传全局变量php,PHP中的全局变量与静态变量

我正在用PHP创建一个基本框架.我需要将当前页面的数据传递到不同的函数,允许它们修改并保存,然后将其传递回要显示的页面.我原本计划将数据存储在像$GLOBALS [‘data’]这样的全局变量中,但我开始认为使用全局变量是一个坏主意.所以我想我会在系统类中放置一个静态变量,并使用system :: $data访问它.所以,我的问题是,哪个更好,为什么?

这个:

$GLOBALS['data'] = array();

$GLOBALS['data']['page_title'] = 'Home';

echo $GLOBALS['data']['page_title'];

或这个:

class system

{

public static $data = array()

}

function data($new_var)

{

system::$data = array_merge(system::$data, $new_var);

}

data(array('page_title' => 'Home'));

echo system::$data['page_title'];

解决方法:

全局变量和公共静态变量之间确实没有区别.类变量的命名空间稍微好一点,但这几乎没有任何区别.两者都可以随时随地访问,并且都是全球状态.

标签:php,global-variables,static

来源: https://codeday.me/bug/20191007/1868154.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值