LoginSignup
0
0

More than 5 years have passed since last update.

プラグイン「UploadPack」でwebroot以上に保存した画像を表示する

Posted at

前回Uploadpackで画像をwebrootより上に保存するだけを行ったので、
今回は出力まで。

<img alt="" src="/view/image/6/test.png">

というタグが生成される想定なので、
手っ取り早くViewController.phpimageというアクションを作成。
(色々なところで使うならAppController.phpとかコンポーネントにしてもいいかも。)

public function image($id, $image_name)
{
    $data_dir = ROOT. DS. 'data'. DS. 'img'. DS;
    $file = sprintf($data_dir. '%s/%s', $id, $image_name);

    if (file_exists($file)) {
        $this->response->file($file);
        return $this->response;
    }

    return false;
}

画像が保存されているフォルダへのパスは、コア定義定数を参考にしてROOTからのパスを指定。

 $data_dir = ROOT. DS. 'data'. DS. 'img'. DS;

引数からファイルまでの絶対パスを生成して($file)、
ファイルが存在していればresponseで表示する。
responseについてはファイルを送る参照。

これでwebrootより上に保存した画像が表示されるはず。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0