我在 webfoot 之外有一个文件夹,我正在使用 $this->response->file($path); 显示里面的图像。
当我只传入文件名时,我的控制器代码工作正常。但我需要将其作为部分 URL 传递。这就是它崩溃的地方。我尝试使用 urldecode 这仍然将其视为 url。
<?php echo ('<img src="books/sendFile/'.rawurlencode("38/backgrounds/orchard-left.png").'" width="100%" alt="aswq" />') ?>
它输出为 books/sendFile/38%2Fbackgrounds%2Forchard-left.png 但浏览器仍将其视为 books/sendFile/38/backgrounds/orchard-left.png
我的控制器
public function sendFile($file) {
$file = rawurldecode($file);
$path = ROOT.DS.'bookUploads'.DS.'Users'.DS.'ingemit/Books/'.$file;
$this->response->file($path);
return $this->response;
}