не в состоянии генерировать миниатюры генерировать миниатюры из phpThumb в контроллере

я использую cakephp framework версия 2.6.1

Я создаю function который будет get properties images и создаст это thumbnail от phpthumb

моя проблема в том, что я не могу создать миниатюру из phpThumb в моей функции

я получаю все data как я хочу, вот мой контроллер

Я пытался загрузить помощник phpThumb как это

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

но у меня не получилось, тогда я попытался импортировать его из родительского `AppController, вот так

App::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'] я получаю URL-адрес изображения сервера propspace

Может кто-нибудь, пожалуйста, скажите мне, как создать миниатюру с помощью 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>';
}

}
}
}
}

2

Решение

У меня есть решение, ребята,

Я делал одну ошибку

мне нужно импортировать phpThumb helper от AppController как и я

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

тогда я должен был сделать object за phpThumb Helper

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

После этого теперь я могу создавать эскизы с помощью $phpThumb

$propertyImageThumb = $phpThumb->url( $propertyImages['Photo']['image_url'], array(
'w'  => 1349,
'h'  => 500,
'zc' => 1
) );
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]