コード例 #1
0
ファイル: picnic.php プロジェクト: rperello/picnic
<?php

$app_start_time = microtime(true);
// Setting up error reporting and display errors for the startup process
error_reporting(-1);
ini_set('display_errors', 1);
// Set default timezone to avoid timezone warnings
date_default_timezone_set('Europe/Paris');
// Server resources
ini_set('memory_limit', '128M');
ini_set('max_execution_time', 60);
ini_set('post_max_size', '2M');
ini_set('upload_max_filesize', '2M');
// Encoding
ini_set('default_charset', 'UTF-8');
mb_internal_encoding('UTF-8');
require '../vendor/autoload.php';
$actionsClass = '\\Rperello\\Picnic\\Actions';
$config = array('public_path' => realpath(__DIR__), 'prefix_mask' => 'th-[a-z0-9A-Z]{1,10}', 'path_mask' => '/.*/', 'allowed_tasks' => array("th-bw" => array($actionsClass, 'grayscale'), "th-ri_150_150" => array($actionsClass, 'resizeInside'), "th-ro_150_150" => array($actionsClass, 'resizeOutside'), "th-cn_150_150(_FFFFFF|_000000|_FF00AA)?" => array($actionsClass, 'resizeContainCentered'), "th-cv_(200_100|400_200|800_400)" => array($actionsClass, 'resizeCoverCentered'), "th-ac_0" => array($actionsClass, 'autoCrop')));
$picnic = new \Rperello\Picnic\Server($config);
try {
    $picnic->process();
} catch (Exception $exc) {
    error_log($exc->getTraceAsString());
    $picnic->halt();
}
コード例 #2
0
ファイル: routes.php プロジェクト: rperello/picnic
<?php

Route::get('/{path}/{prefix}{task?}/{filename}', function ($path, $prefix, $task, $filename) {
    $picnic = new \Rperello\Picnic\Server(array('public_path' => Config::get('picnic::public_path'), 'path_mask' => Config::get('picnic::path_mask'), 'allowed_tasks' => Config::get('picnic::allowed_tasks')));
    $picnic->process();
})->where(array('path' => trim(Config::get('picnic::path_mask'), '/'), 'prefix' => Config::get('picnic::prefix_mask'), 'task' => '[a-zA-Z0-9_]+', 'filename' => '(.*)\\.(png|jpg|jpeg|gif)'));