本文整理汇总了PHP中f::nice_size方法的典型用法代码示例。如果您正苦于以下问题:PHP f::nice_size方法的具体用法?PHP f::nice_size怎么用?PHP f::nice_size使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类f
的用法示例。
在下文中一共展示了f::nice_size方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: niceTotalSize
function niceTotalSize()
{
return f::nice_size($this->totalSize());
}
示例2: size
/**
* Gets the size of the directory and all subfolders and files
*
* @param string $dir The path of the directory
* @param boolean $recursive
* @param boolean $nice returns the size in a human readable size
* @return mixed
*/
static function size($path, $recursive = true, $nice = false)
{
if (!file_exists($path)) {
return false;
}
if (is_file($path)) {
return self::size($path, $nice);
}
$size = 0;
foreach (glob($path . "/*") as $file) {
if ($file != "." && $file != "..") {
if ($recursive) {
$size += self::size($file, true);
} else {
$size += f::size($path);
}
}
}
return $nice ? f::nice_size($size) : $size;
}
示例3: secure_upload
/**
* Upload image
*
* Requirement: Kirby
*
* @param string $name Name POSTNAME
* @return array
* @version 1.0 - 2011-01-12
*/
function secure_upload($options)
{
/*
$options['field'] // (required) source string
$options['path'] // (required) source string
*/
$options['image'] = isset($options['image']) ? $options['image'] : true;
// default true
$options['max_size'] = isset($options['max_size']) ? min($options['max_size'], server_maxupload()) : server_maxupload();
// default server max upload in bytes
if (empty($options['field']) || empty($options['path'])) {
return array('error' => 'Option field and path is required');
}
if (!isset($_FILES[$options['field']])) {
return array('error' => 'No file was selected');
}
// validate path
$upload_path = $options['path'];
$upload_path = rtrim($upload_path, '/') . '/';
if (@realpath($upload_path) !== false) {
$upload_path = str_replace("\\", "/", realpath($upload_path));
}
if (!file_exists($upload_path)) {
if (!@mkdir($upload_path, 0777)) {
return array('error' => 'Directory isnt writable');
}
chmod($upload_path, 0777);
}
if (!@is_dir($upload_path) || !is_writable($upload_path)) {
return array('error' => 'Directory isnt writable');
}
$upload_path = preg_replace("/(.+?)\\/*\$/", "\\1/", $upload_path);
// ?
// Remapping for loop
if (!is_array($_FILES[$options['field']]['tmp_name'])) {
$_FILES[$options['field']] = array_map(function ($item) {
return array($item);
}, $_FILES[$options['field']]);
}
$success = array();
foreach ($_FILES[$options['field']]['tmp_name'] as $key => $value) {
// Get upload info
$error = $_FILES[$options['field']]['error'][$key];
$name = $_FILES[$options['field']]['name'][$key];
$tmp_name = $_FILES[$options['field']]['tmp_name'][$key];
$size = $_FILES[$options['field']]['size'][$key];
$type = $_FILES[$options['field']]['type'][$key];
if (!is_uploaded_file($tmp_name) || $error != UPLOAD_ERR_OK) {
continue;
}
$type = preg_replace("/^(.+?);.*\$/", "\\1", $type);
// ?
$type = strtolower(trim(stripslashes($type), '"'));
$ext = f::extension($name);
$name = f::safe_name(f::name($name));
$name = substr($name, 0, 100);
// Check allowed file type
$image_types = array('gif', 'jpg', 'jpeg', 'png', 'jpe');
if ($options['image']) {
if (!in_array($ext, $image_types) || !is_image($type) || getimagesize($tmp_name) === false) {
continue;
}
}
// Check file size
if ($options['max_size'] < $size) {
continue;
}
// Unique filename
if (file_exists($upload_path . $name . "." . $ext)) {
$number = 1;
while (file_exists($upload_path . $name . $number . "." . $ext)) {
$number++;
}
$name = $name . $number;
}
// save
if (!@move_uploaded_file($tmp_name, $upload_path . $name . "." . $ext)) {
continue;
}
// TODO xss clean
$success[] = array('extension' => $ext, 'filename' => $name . "." . $ext, 'original_filename' => $_FILES[$options['field']]['name'][$key], 'name' => $name, 'size' => $size, 'nice_size' => f::nice_size($size), 'md5' => md5(file_get_contents($upload_path . $name . "." . $ext)));
}
return array('failed' => count($_FILES[$options['field']]['tmp_name']) - count($success), 'success' => $success);
}