是否可以使用php关键字'使用'在Php函数内部与下面的代码相同?如果我正在使用'请使用'关键字它工作正常,但我想在函数内使用此关键字。请问我该怎么做?
<?php
public function exportSales() {
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
header('Content-Type: application/vnd.openxmlformats- officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="myfile.xlsx"');
header('Cache-Control: max-age=0');
$writer = new Xlsx($spreadsheet);
ob_end_clean();
$writer->save('php://output');
}
?>
答案 0 :(得分:0)
在函数内使用use
关键字无效。它会给出语法错误。因为它导入指定的命名空间,所以它应该在命名空间之后添加。
层次:
Namespaces
Use Statements
Class Declaration {
Function Declarations {
// code
}
}
详细信息Visit here
答案 1 :(得分:0)
这不是一种有效的做法。您的代码结构应为:
就像:
namespace foo
Use bar/abc
Use bar/xyz
class foo {
//class definition
function bar(){
//function definition
}
}
您应该查看Import docs
修改强>
名称空间的示例:
使用方法export创建自己的命名空间及其中的类,如:
<?php
namespace myModule
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
class export {
function exportSales(){
//function definition
}
}
?>
然后,您将能够在其他代码中使用该类,使用命名空间如下:
<?php
use myModule\{export}
function otherFunc(){
$export = new export()
$export->exportSales()
}
?>