本文整理汇总了PHP中Archive::output方法的典型用法代码示例。如果您正苦于以下问题:PHP Archive::output方法的具体用法?PHP Archive::output怎么用?PHP Archive::output使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Archive
的用法示例。
在下文中一共展示了Archive::output方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: on_download
private function on_download()
{
Util::json_fail(Util::ERR_DISABLED, 'download disabled', !$this->context->query_option('download.enabled', false));
$as = $this->request->query('as');
$type = $this->request->query('type');
$base_href = $this->request->query('baseHref');
$hrefs = $this->request->query('hrefs');
$archive = new Archive($this->context);
set_time_limit(0);
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $as . '"');
header('Connection: close');
$ok = $archive->output($type, $base_href, $hrefs);
Util::json_fail(Util::ERR_FAILED, 'packaging failed', !$ok);
exit;
}
示例2: on_download
private function on_download()
{
json_fail(1, "downloads disabled", !$this->options["download"]["enabled"]);
$as = use_request_param("as");
$type = use_request_param("type");
$hrefs = use_request_param("hrefs");
$archive = new Archive($this->app);
$hrefs = explode("|:|", trim($hrefs));
set_time_limit(0);
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"{$as}\"");
header("Connection: close");
$rc = $archive->output($type, $hrefs);
json_fail(2, "packaging failed", $rc !== 0);
exit;
}
示例3: apply
public function apply()
{
$options = $this->app->get_options();
list($action) = use_request_params(array("action"));
if ($action === "get") {
$response = array();
if (array_key_exists("options", $_REQUEST)) {
use_request_params("options");
$response["options"] = $this->app->get_options();
}
if (array_key_exists("types", $_REQUEST)) {
use_request_params("types");
$response["types"] = $this->app->get_types();
}
if (array_key_exists("langs", $_REQUEST)) {
use_request_params("langs");
$response["langs"] = $this->app->get_l10n_list();
}
if (array_key_exists("l10n", $_REQUEST)) {
list($iso_codes) = use_request_params("l10nCodes", "l10n");
$iso_codes = explode(":", $iso_codes);
$response["l10n"] = $this->app->get_l10n($iso_codes);
}
if (array_key_exists("checks", $_REQUEST)) {
use_request_params("checks");
$response["checks"] = $this->app->get_server_checks();
}
if (array_key_exists("server", $_REQUEST)) {
use_request_params("server");
$response["server"] = $this->app->get_server_details();
}
if (array_key_exists("custom", $_REQUEST)) {
list($abs_href) = use_optional_request_params("customHref", "custom");
$response["custom"] = $this->app->get_customizations($abs_href);
}
if (array_key_exists("items", $_REQUEST)) {
list($abs_href, $what) = use_optional_request_params("itemsHref", "itemsWhat", "items");
$what = is_numeric($what) ? intval($what, 10) : 1;
$response["items"] = $this->app->get_items($abs_href, $what);
}
if (count($_REQUEST)) {
$response["unused"] = $_REQUEST;
}
json_exit($response);
} else {
if ($action === "getThumbHref") {
if (!$options["thumbnails"]["enabled"]) {
json_fail(1, "thumbnails disabled");
}
normalized_require_once("/server/php/inc/Thumb.php");
if (!Thumb::is_supported()) {
json_fail(2, "thumbnails not supported");
}
list($type, $src_abs_href, $mode, $width, $height) = use_request_params(array("type", "href", "mode", "width", "height"));
$thumb = new Thumb($this->app);
$thumb_href = $thumb->thumb($type, $src_abs_href, $mode, $width, $height);
if ($thumb_href === null) {
json_fail(3, "thumbnail creation failed");
}
json_exit(array("absHref" => $thumb_href));
} else {
if ($action === "download") {
json_fail(1, "downloads disabled", !$options["download"]["enabled"]);
list($as, $type, $hrefs) = use_request_params(array("as", "type", "hrefs"));
normalized_require_once("/server/php/inc/Archive.php");
$archive = new Archive($this->app);
$hrefs = explode("|:|", trim($hrefs));
set_time_limit(0);
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"{$as}\"");
header("Connection: close");
$rc = $archive->output($type, $hrefs);
if ($rc !== 0) {
json_fail("packaging failed");
}
exit;
} else {
if ($action === "upload") {
list($href) = use_request_params(array("href"));
json_fail(1, "wrong HTTP method", strtolower($_SERVER["REQUEST_METHOD"]) !== "post");
json_fail(2, "something went wrong", !array_key_exists("userfile", $_FILES));
$userfile = $_FILES["userfile"];
json_fail(3, "something went wrong [" . $userfile["error"] . "]", $userfile["error"] !== 0);
json_fail(4, "folders not supported", file_get_contents($userfile["tmp_name"]) === "null");
$upload_dir = $this->app->get_abs_path($href);
$code = $this->app->get_http_code($href);
json_fail(5, "upload dir no h5ai folder or ignored", $code !== App::$MAGIC_SEQUENCE || $this->app->is_ignored($upload_dir));
$dest = $upload_dir . "/" . utf8_encode($userfile["name"]);
json_fail(6, "already exists", file_exists($dest));
json_fail(7, "can't move uploaded file", !move_uploaded_file($userfile["tmp_name"], $dest));
json_exit();
} else {
if ($action === "delete") {
json_fail(1, "deletion disabled", !$options["delete"]["enabled"]);
list($hrefs) = use_request_params(array("hrefs"));
$hrefs = explode("|:|", trim($hrefs));
$errors = array();
foreach ($hrefs as $href) {
$d = normalize_path(dirname($href), true);
$n = basename($href);
//.........这里部分代码省略.........