我的bootstrap.php中包含了类,并且在包含的类上实例化了变量,当我包含bootstrap.php时,它给了我一个非对象的成员函数调用
bootstrap.php中
require_once "config/constants.php";
require_once "libraries/Dropbox/DropboxClient.php";
$dropbox = new DropboxClient(array(
'app_key' => DROPBOX_CONSUMER_KEY,
'app_secret' => DROPBOX_CONSUMER_SECRET,
'app_full_access' => true,
),'en');
的index.php
require_once "bootstrap.php";
dropbox_file_tree();
function dropbox_file_tree()
{
if(!empty($access_token)) {
$dropbox->SetAccessToken($access_token);
}
$files = $dropbox->GetFiles("",true);
print_r($files);
}
答案 0 :(得分:2)
将dropbox对象传递给函数
dropbox_file_tree($dropbox);
function dropbox_file_tree($dropbox)
{
if(!empty($access_token)) {
$dropbox->SetAccessToken($access_token);
}
$files = $dropbox->GetFiles("",true);
print_r($files);
}
答案 1 :(得分:1)
它与include
无关,它是scope issue,函数只能看到局部变量。
您必须使用global
关键字或$GLOBALS
超全局或将其作为参数传递给函数。