调用静态函数 zf2

call static function zf2

我正在使用 Zend 框架 2。 我正在尝试调用从外部库导入的静态函数。 库已正确导入。

现在,当我尝试在 类 之一中调用静态函数时,他将我的控制器路径添加到函数调用中。 他为什么要这么做?

这是我得到的错误:

PHP Fatal error: Uncaught Error: Class 'Application\Controller\PHPExcel_IOFactory' not found in /www/zendphp7/htdocs/Ivan/Takalot/module/Application/src/Application/Controller/AuthController.php:177

这是调用静态函数的函数:

public function getexcelToDB2()
{ 

$data= array();        
$file =  __DIR__."/MALMASH_CTM_JOBS_LIST.xml";       
$objReader = PHPExcel_IOFactory::createReaderForFile($file);        
$objReader->setReadDataOnly(true);       
$objPHPExcel = $objReader->load($file);

}

如果您通过 composer 安装 phpoffice/phpexcel,它应该以“\”开头:

$objReader = \PHPExcel_IOFactory::createReaderForFile($file);

这就是我们在控制器等中使用 PHPExcel 类 的方式,而无需 usage/import 其他命名空间。

否则 PHP 在当前命名空间 (Application\Controller) 中查找。您可以查看 phpoffice/phpexcel 的供应商目录。他们的配置应该会提示您使用他们的 "correct" 命名空间。