php怎么在class内部使用 在 类外部定义的变量?

页面a.php定义了一堆常量及变量,其中有个变量$a=array(1,2,3,4,5);页面b.php定义了一个类:classb{var$c;public__constr... 页面 a.php 定义了一堆常量及变量,其中有个变量 $a = array(1,2,3,4,5);
页面 b.php 定义了一个类:
class b {
var $c;
public __construct () {
$this->c = $a // 在这里使用变量a
}
}
现在知道的的方式是使用$GLOBALS['a'],但是这样开启register_globals 太不安全,如果关闭的话 $GLOBALS就不能使用了
想问下,【不能使用参数形式】怎么才能直接使用 外部变量 $a.
展开
 我来答
sunshine丶Q
推荐于2018-05-06
知道答主
回答量:6
采纳率:0%
帮助的人:7766
展开全部
入口文件引入
include 'app/configs/config.inc.php';
include CORE_DIR . 'LoadConfig.class.php';
LoadConfig::setConfig($config);
unset($config);

而'app/configs/config.inc.php';里面是放数组的 也就是变量具体
<?php
$config = array(
'host_name'=>'127.0.0.1' ,
'user_name'=>'root' ,
'password'=>''
)
?>
而'LoadConfig.class.php'具体原理是这样的
class LoadConfig {
private static $_config;
//set方法是给属性赋值
static function setConfig($config) {
self::$_config = $config;
}
//get方法是获取属性值
static function getConfig() {
return self::$_config;
}
}

然后想用config.inc.php里的数组或者变量的话 那就引入而'LoadConfig.class.php'这个文件 执行 getConfig() 方法

虽然很麻烦但是这样不破环封装性 而且好管理 不知道能否帮上你的问题
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晏黎明
2011-10-14 · TA获得超过247个赞
知道答主
回答量:451
采纳率:0%
帮助的人:336万
展开全部
没明白...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sphenginx
2011-10-14 · TA获得超过428个赞
知道小有建树答主
回答量:555
采纳率:50%
帮助的人:298万
展开全部
能不能具体些? 可以把类外部的变量赋值给php的class内的一个属性啊,或者当做参数传进来啊~
更多追问追答
追问
页面 a.php 定义了一堆常量及变量,其中有个变量 $a  =  array(1,2,3,4,5);
页面 b.php 定义了一个类:
class b {
var $c;
public __construct () {
$this->c = $a // 在这里使用变量a
}
}
现在知道的的方式是使用$GLOBALS['a'],但是这样开启register_globals 太不安全,如果关闭的话 $GLOBALS就不能使用了
想问下,【不能使用参数形式】怎么才能直接使用 外部变量 $a.
追答
class b {
var $c;
public __construct ($a) {
$this->c = $a // 在这里使用变量a
}
}
$b = new b($a);
这样就可以了~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式