file1:
<?php
function done() {
require_once '/home/vendor/autoload.php';
use Qiniu\Auth;
use Qiniu\Storage\UploadManager;
#omitted
}
?>file2
<?php
require_once '/home/vendor/autoload.php';
use Qiniu\Auth;
use Qiniu\Storage\UploadManager;
function done() {
#omitted
}
?>为什么file1不能工作?
它应该重写为file2,为什么需要和使用可以写在函数体中?
发布于 2015-12-04 12:33:26
因为来自php文档
当包含文件时,它包含的代码继承了发生包含的行的变量范围。从那时起,调用文件中该行中的任何可用变量都将在被调用文件中可用。但是,所包含的文件中定义的所有函数和类都具有全局范围。
对于use关键字,适用相同的规则
在您的示例中,声明是μnside,函数限制了vars和包含的文件中的代码声明的可见范围。
https://stackoverflow.com/questions/34088423
复制相似问题