微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-Yii 2.在公共文件夹外上传文档

我需要将文档上传到服务器,因为它是个人文档,所以他们希望将其上传到公用文件夹之外.我知道如何上传文件

if ($model->load(Yii::$app->request->post())) {

            $model->document = UploadedFile::getInstance($model, 'document');
            if ($model->upload() !== false) {
                $model->save();
            }

            return $this->redirect(['view', 'id' => $model->id]);
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }

但是,由于网址无法访问,我该如何阅读?我打算创建一个操作来获取文件,但不确定Yii是否已准备好应对这种情况?

解决方法:

是的Yii可以发送文件输出,但是您仍然必须创建自己的操作.

让我们假设siteController中的以下代码特定于图像输出,您可以使用相同的方式来输出其他文件.

public function actionImage($image_path) {
      Yii::$app->getResponse()->sendFile(Yii::getAlias('@image_uploads') . $image_path);
}

现在图像src将类似于

< img src =“ / site / image?image_path = / posts / 1.png” />或等效于实际应用程序的URL路由

所以Yii2发送文件输出的基本功能

Yii::$app->getResponse()->sendFile();

位于下方

\yii\web\Response.PHP

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐