这是我分享的Foursquare图片网址:-
https://igx.4sqi.net/img/general/width960/59805036_Qt3WZYJ5z3_LPh8tpG4wtqJSrVokkKioxYebWogfOjo.jpg
它显示原始图像。现在,如果我使用以下图像链接,
https://igx.4sqi.net/img/general/200x1600/59805036_Qt3WZYJ5z3_LPh8tpG4wtqJSrVokkKioxYebWogfOjo.jpg
图像将根据尺寸200x1600自动调整大小。给定任何尺寸,图像将自动调整大小,这证明没有预定义尺寸。
在URL中放置以上链接时,图像将自动调整大小。如何在使用Codeigniter或PHP的情况下动态管理此问题?
我对此一无所知。
答案 0 :(得分:0)
使用CI非常简单。阅读image manipulation class的文档。
您将需要创建一个控制器来处理该问题:
<?php
class Image extends CI_Controller
{
public function resize($filename, $width, $height){
// path to image in your project
$image_path = 'uploads/img/'.$filename;
// if image doesn't exist show 404 error
if(!file_exists($image_path))
show_404();
// Load image library
$this->load->library('image_lib');
// configure image library
$config = array(
'image_library' => 'gd2',
'source_image' => $image_path,
'dynamic_output' => true,
'width' => $width,
'height' => $height,
);
// load configuration
$this->image_lib->initialize($config);
// resize
$this->image_lib->resize();
}
}
现在打开浏览器并尝试:localhost / project_folder / image / resize / example.jpg / 500/500
要使URL看起来像问题中的URL,可以将route添加到route配置文件中。