我想在另一个文件中访问外部类的方法。
我有一个外部课程,让我们说:
外部/ file.php
class ExternalClass {
private $myClient;
const CONSTANT = 'some/path';
public function _constructor($myClient) {
$this->myClient = $myClient;
}
public function getSome($information) { // Need to access this function
$data = new StdObject();
$data->information = $information;
$result = $this->myClient->post(
self::CONSTANT,
$data
);
return($result['code'] == 200 ? json_decode($result['body']) : false);
}
public static function instance($SETTINGS) {
return new ExternalClass(new MyClient($SETTINGS['externalclass']['host']));
}
}
...我想在另一个文件中引用这个类。
内部/ file.php
include_once('external/file.php');
$externalClassInstance = ExternalClass::instance($SETTINGS); // line 3
$externalClass = new ExternalClass(); // line 4
$externalClassGetSome = $externalClass->getSome($information); // line 5
问题是,我不确定我是否正确引用内部文件中的外部方法。
是"第3行"甚至是必要的?
此外,添加第5行代码会破坏其后的所有代码。
答案 0 :(得分:1)
首先,我不知道你为什么需要第3行。 其次你似乎有答案
include_once('external/file.php');
$externalClass = new ExternalClass(); // line 4
$externalClassGetSome = $externalClass->getSome($information);
答案 1 :(得分:0)
尝试从
更改 include_once('external/file.php');
到
include_once('../external/file.php');
因为它位于外部目录中,而您的文件位于内部目录中。