无法生成缩略图从 CakePHP 控制器中的 phpThumb 生成缩略图

Unable to generate thumbnail generate thumbnails from phpThumb in controller in CakePHP

我正在使用 CakePHP 框架版本 2.6.1

我正在创建一个函数,它将获取属性图像并通过 phpThumb 创建其缩略图。

我的问题是我无法在我的函数中从 phpThumb 创建缩略图。我正在根据需要获取所有数据。这是我的控制器

我试过像这样加载 phpThumb 的助手

public $helpers = array('PhpThumb.PhpThumb');

但对我不起作用。然后我尝试从我的 parent AppController likeA​​pp::import('Helper', 'PhpThumb.PhpThumb');` 导入它,但不幸的是它也没有用。

我检查了我的 error logs 并发现了这个错误

PHP Fatal error: Call to a member function url() on a non-object in /home/gulfsothebysrealty/public_html/app/Controller/CronController.php on line 39

$propertyImages['Photo']['image_url'] 我正在获取 propspace 服务器图像 url

如何在控制器中使用 phpThumb 生成缩略图?

class CronController extends AppController {

public function index() {
    $properties = $this->Property->find( 'all', array(
            'conditions' => array(
                'Property.thumb_updated' => 0
            ),
            'limit'      => 5,
            'order'      => array( 'Property.id' => 'desc' )
        )
    );
    foreach ( $properties as $property ) {
        $propertyId = $property['Property']['id']; 
        $data = array( 'id' => $propertyId, 'thumb_updated' => 1 );
        $this->Property->save( $data );
        $getImages = $this->Property->Photo->find( 'all', array(
            'conditions' => array(
                'Photo.property_id' => $propertyId,
            ),
            'order'      => array( 'Photo.property_id' => 'desc' )
        ) );
        foreach ( $getImages as $propertyImages ) {
            if ( ! empty( $propertyImages['Photo']['image_url'] ) ) { 
/*line 39*/     $propertyImageThumb = $this->PhpThumb->url( $propertyImages['Photo']['image_url'], array(
                    'w'  => 1349,
                    'h'  => 500,
                    'zc' => 1
                ) );
                echo '<pre>';
                print_r( $propertyImageThumb );
                echo '</pre>';
            }

        }
      } 
    } 
   }

伙计们,我得到了解决方案,

我犯了一个错误

我需要像我一样从 AppController 导入 phpThumb helper

App::import( 'Helper', 'PhpThumb.PhpThumb' );

然后我不得不为 phpThumb Helper

制作一个 object

$phpthumb = new PhpThumbHelper(new View());

现在我可以使用 $phpThumb

创建缩略图了
$propertyImageThumb = $phpThumb->url( $propertyImages['Photo']['image_url'], array(
                'w'  => 1349,
                'h'  => 500,
                'zc' => 1
            ) );