gpt4 book ai didi

php - 如何在不传递数组的情况下使类可以访问数组?

转载 作者:可可西里 更新时间:2023-10-31 23:01:22 26 4
gpt4 key购买 nike

我有一个 .ini 文件作为我项目的配置。现在我想让它无处不在。 Here是我正在尝试做的事情的简化:

<?php

$config = [];
$config['base_url'] = '/mypath/';

class myclass{

public function myfunc(){
print_r($config);
}
}

$obj = new myclass;
$obj->myfunc;

正如您在 fiddle 中看到的那样,它会抛出:

Notice: Undefined property: myclass::$myfunc in /in/iNZOv on line 14

请注意,当我为其使用 global 关键字时,它会抛出语法错误


看,我可以像这样将数组传递给类:

$obj = new myclass($config);

public $config;
public function __construct($config)
{
$this->config = $config;
}

但我不能每次都对所有类(class)都这样做。不管怎样,我想知道,是否可以使数组在全局范围内可访问?

最佳答案

使用全局。您还需要 $obj->myfunc(); 而不是 $obj->myfunc(); 因为它是成员函数

$config = [];
$config['base_url'] = '/mypath/';

class myclass{

public function myfunc(){
global $config;
print_r($config);
}
}

$obj = new myclass;
$obj->myfunc();

关于php - 如何在不传递数组的情况下使类可以访问数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45253399/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com