本文整理汇总了PHP中file::ext方法的典型用法代码示例。如果您正苦于以下问题:PHP file::ext方法的具体用法?PHP file::ext怎么用?PHP file::ext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类file
的用法示例。
在下文中一共展示了file::ext方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: name
/**
* 获取文件名称 , 第二个参数控制是否返回文件扩展名,默认为返回带扩展名的文件名称
* @param string $file
* @param boolean $stripext
* @return string
*/
public static function name($file, $stripext = false)
{
$name = basename($file);
if ($stripext) {
$ext = file::ext($file);
$name = basename($file, '.' . $ext);
}
return $name;
}
示例2: type
/**
* 获取文件的类型
* @param string $file
* @return string
*/
public static function type($file)
{
$ext = strpos($file, '.') === false ? $file : file::ext($file);
$exts = file::exts();
$type = 'unknown';
foreach ($exts as $t => $e) {
if (preg_match('/^(' . $e . ')$/', $ext)) {
$type = $t;
break;
}
}
return $type;
}
示例3: url
/**
* 获取获取指定大小的图片url
* @param string $image 图片文件名称
* @return string
*/
public static function url($image, $width = 0, $height = 0, $newext = '')
{
if ($width === 0) {
return $image;
}
//计算相应宽度高度的图片地址
$ext = file::ext($image);
$img = substr($image, 0, strlen($image) - strlen($ext) - 1);
$img = $img . '_' . $width;
if ($height !== 0) {
$img = $img . '_' . $height;
}
//新的扩展名
if (!empty($newext)) {
$ext = $newext;
}
//合成完整的图片url
$img = $img . '.' . $ext;
return $img;
}
示例4: type
/**
* 获取文件的类型
* @param string $file
* @return string
*/
public static function type($file)
{
$ext = file::ext($file);
if (preg_match('/^(jpe?g|png|[gt]if|bmp|ico|tif|tiff|psd|xbm|xcf)$/', $ext)) {
$type = 'image';
} elseif (preg_match('/^(doc|docx|xlt|xls|xlt|xltx|mdb|chm)$/', $ext)) {
$type = 'document';
} elseif (preg_match('/^(html|htm|txt|php|asp|js|css|htc|tml|config|module|data|sql)$/', $ext)) {
$type = 'text';
} elseif (preg_match('/^(rar|zip|7z|tar)$/', $ext)) {
$type = 'zip';
} elseif (preg_match('/^(swf|flv)$/', $ext)) {
$type = 'flash';
} elseif (preg_match('/^(mp3|mp4|wav|wmv|midi|ra|ram)$/', $ext)) {
$type = 'audio';
} elseif (preg_match('/^(mpg|mpeg|avi|rm|rmvb|mov)$/', $ext)) {
$type = 'video';
} else {
$type = 'unknown';
}
}
示例5: files
/**
* 返回目录下的全部文件的数组
* @param string $path 路径
* @param array $ext 特定的文件格式,如只获取jpg,png格式
* @param bool|int $recurse 子目录,或者子目录级数
* @param bool $fullpath 全路径或者仅仅获取文件名称
* @param array $ignore 忽略的文件夹名称
* @return array
*/
public static function files($path, $ext = '', $recurse = false, $fullpath = false, $ignore = array('.svn', 'CVS', '.DS_Store', '__MACOSX'))
{
$files = array();
$path = path::clean($path);
if (!is_dir($path)) {
return false;
}
$handle = opendir($path);
while (($file = readdir($handle)) !== false) {
if ($file != '.' && $file != '..' && !in_array($file, $ignore)) {
$f = $path . DS . $file;
if (is_dir($f)) {
if ($recurse) {
if (is_bool($recurse)) {
$subfiles = dir::files($f, $ext, $recurse, $fullpath);
} else {
$subfiles = dir::files($f, $ext, $recurse - 1, $fullpath);
}
if (is_array($subfiles)) {
$files = array_merge($files, $subfiles);
}
}
} else {
if (!empty($ext)) {
if (is_array($ext) && in_array(file::ext($file), $ext)) {
$files[] = $fullpath ? $f : $file;
}
} else {
$files[] = $fullpath ? $f : $file;
}
}
}
}
closedir($handle);
return $files;
}
示例6: array
$column['center'] = '<div class="zotop-icon zotop-icon-file folder"></div>';
$column['name'] = '<a href="' . zotop::url('webftp/index/index', array('dir' => rawurlencode($dir . '/' . $folder))) . '"><b>' . $folder . '</b></a>';
$column['name'] .= '<h5>';
$column['name'] .= '<a href="' . zotop::url('webftp/folder/rename', array('dir' => rawurlencode($dir), 'file' => $file)) . '" class="dialog">重命名</a>';
$column['name'] .= ' <a href="' . zotop::url('webftp/folder/delete', array('dir' => rawurlencode($dir), 'file' => $file)) . '" class="dialog">删除</a>';
$column['name'] .= '</h5>';
$column['type w60'] = '文件夹';
$column['encoding w60'] = '';
$column['size w60'] = '--';
$column['atime w120'] = time::format(@fileatime($path . DS . $folder));
$column['mtime w120'] = time::format(@filemtime($path . DS . $folder));
table::row($column);
}
foreach ($files as $file) {
$column = array();
$column['center'] = '<div class="zotop-icon zotop-icon-file ' . file::ext($file) . '"></div>';
$column['name'] = '<div><b>' . $file . '</b></div>';
$column['name'] .= '<h5>';
$column['name'] .= '<a href="' . zotop::url('webftp/file/edit', array('file' => url::encode($dir . '/' . $file))) . '" class="dialog">编辑</a>';
$column['name'] .= ' <a href="' . zotop::url('webftp/file/rename', array('file' => url::encode($dir . '/' . $file))) . '" class="dialog">重命名</a>';
$column['name'] .= ' <a href="' . zotop::url('webftp/file/delete', array('file' => url::encode($dir . '/' . $file))) . '" class="dialog">删除</a>';
$column['name'] .= '</h5>';
$column['type w60'] = '文件';
$column['encoding w60'] = file::isUTF8($path . DS . $file) ? 'UTF8' : '';
$column['size w60'] = format::byte(@filesize($path . DS . $file));
$column['atime w120'] = time::format(@fileatime($path . DS . $file));
$column['mtime w120'] = time::format(@filemtime($path . DS . $file));
table::row($column);
}
table::footer();
$this->bottom();
示例7: array
</script>
<?php
form::header(array('valid' => 'false', 'class' => 'list', 'action' => zotop::url('system/file/action')));
$column = array();
$column['select'] = html::checkbox(array('name' => 'table', 'class' => 'selectAll'));
$column['w40 center'] = '图标';
$column['name'] = '名称';
$column['user_name'] = '用户名';
//$column['type'] = '类型';
$column['size w60'] = '大小';
$column['atime w120'] = '创建时间';
table::header('list', $column);
foreach ($files as $file) {
$column = array();
$column['select'] = html::checkbox(array('name' => 'id[]', 'value' => $file['id'], 'class' => 'select'));
$column['center w40'] = $file['type'] == 'image' ? '<div class="image">' . html::image($file['path'], array('style' => 'display:none;')) . '</div>' : '<div class="zotop-icon zotop-icon-file ' . file::ext($file['path']) . '"></div>';
$column['name'] = '<div><b>' . $file['name'] . '</b></div>';
$column['name'] .= '<h5>';
$column['name'] .= '<a href="' . zotop::url('system/file/down/' . $file['id']) . '">下载</a>';
$column['name'] .= ' <a href="' . zotop::url('system/file/edit/' . $file['id']) . '" class="dialog">编辑</a>';
$column['name'] .= ' <a href="' . zotop::url('system/file/delete/' . $file['id']) . '" class="confirm">删除</a>';
$column['name'] .= '</h5>';
$column['user_name w100'] = '<a><b>' . $file['user_username'] . '</b></a><div class="textflow w100">' . $file['user_name'] . '</div>';
//$column['type w60'] = ''.$file['type'].'';
$column['size w60'] = '' . format::byte($file['size']) . '';
$column['atime w120'] = '' . time::format($file['createtime']) . '';
table::row($column);
}
table::footer();
form::buttons(array('type' => 'submit', 'value' => '永久删除'));
form::footer($pagination);
示例8: array
<?php
echo field::get('textarea', array('name' => 'source', 'value' => $content));
?>
<script type="text/javascript">
//显示按钮
dialog.setTitle('编辑:<?php
echo $file;
?>
').setWidth(800).setTip('小提示:快捷键 Ctrl+S 可以快速保存').setButtons([{text:'保 存',callback:save},{text:'关 闭'}]);
//加载编辑器
var so = new SWFObject("<?php
echo url::decode('$common/swf/ScriptEditor.swf');
?>
", "SourceEditor", "100%", "460", "9", "#ffffff");
so.addVariable("Language","<?php
echo file::ext($file);
?>
");
so.addVariable("AfterInit","setContent");
so.addParam("wmode", "Opaque");
so.write("SourceEditorPannel");
function setContent(){
content = $("textarea[name=source]").val();
$("#SourceEditor").get(0).setText(content);
$('#SourceEditorLoading').hide();
}
function save(dialog,button){
var content = $("#SourceEditor").get(0).getText().replace(' ',' ');
示例9: onDefault
public function onDefault($dir = '')
{
$path = ROOT . DS . trim($dir, DS);
$path = path::clean($path);
$folders = dir::folders($path);
$files = dir::files($path);
$fileext = array('php', 'css', 'js', 'jpg', 'jpeg', 'gif', 'png', 'bmp', 'psd', 'html', 'htm', 'tpl', 'rar', 'zip', 'mp3');
$page['title'] = '文件管理器';
page::header($page);
page::add('<div id="page" class="clearfix">');
page::add('<div id="main">');
page::add('<div id="main-inner">');
page::top();
page::navbar($this->navbar(), 'default');
$column = array();
$column['select'] = '';
$column['name'] = '名称';
$column['type'] = '类型';
$column['size w60'] = '大小';
$column['atime w120'] = '创建时间';
$column['mtime w120'] = '修改时间';
$column['manage rename w80'] = '重命名';
$column['manage edit w80'] = '编辑';
$column['manage delete'] = '删除';
table::header('list', $column);
foreach ($folders as $folder) {
$column = array();
$column['select w20 center'] = html::image(url::theme() . '/image/fileext/folder.gif');
$column['name'] = '<a href="' . zotop::url('filemanager/index/default', array('dir' => $dir . DS . $folder)) . '"><b>' . $folder . '</b></a>';
$column['type w60'] = '文件夹';
$column['size w60'] = '--';
$column['atime w120'] = time::format(@fileatime($path . DS . $folder));
$column['mtime w120'] = time::format(@filemtime($path . DS . $folder));
$column['manage rename w80'] = '<a>重命名</a>';
$column['manage edit w80'] = '<a class="disabled">编辑</a>';
$column['manage delete'] = '<a>删除</a>';
table::row($column);
}
foreach ($files as $file) {
$column = array();
$column['select w20 center'] = in_array(file::ext($file), $fileext) ? html::image(url::theme() . '/image/fileext/' . file::ext($file) . '.gif') : html::image(url::theme() . '/image/fileext/unknown.gif');
$column['name'] = '<a href="' . zotop::url('filemanager/index/default', array('dir' => $dir . DS . $file)) . '"><b>' . $file . '</b></a>';
$column['type w60'] = '文件';
$column['size w60'] = format::byte(@filesize($path . DS . $file));
$column['atime w120'] = time::format(@fileatime($path . DS . $file));
$column['mtime w120'] = time::format(@filemtime($path . DS . $file));
$column['manage rename w80'] = '<a>重命名</a>';
$column['manage edit w80'] = '<a href="' . zotop::url('filemanager/file/edit', array('filename' => $dir . DS . $file, 'dir' => '***')) . '">编辑</a>';
$column['manage delete'] = '<a>删除</a>';
table::row($column);
}
table::footer();
page::bottom();
page::add('</div>');
page::add('</div>');
page::add('<div id="side">');
block::header('快捷操作');
echo '<ul class="list">';
echo '<li class="file"><a href="' . zotop::url('zotop/file/newfile') . '" class="dialog">新建文件</a></li>';
echo '<li class="folder"><a href="' . zotop::url('zotop/file/newfolder') . '" class="dialog">新建文件夹</a></li>';
echo '<li class="folder"><a href="' . zotop::url('zotop/file/upload') . '" class="dialog">文件上传</a></li>';
echo '</ul>';
block::footer();
block::header('其他位置');
echo '<ul class="list">';
echo '<li class="root"><a>根目录</a></li>';
echo '<li class="root"><a>模板目录</a></li>';
echo '<li class="root"><a>模块目录</a></li>';
echo '<li class="root"><a>缓存目录</a></li>';
echo '</ul>';
block::footer();
page::add('</div>');
page::add('</div>');
page::footer();
}
示例10: drawFile
static function drawFile($fname)
{
// settings
ini_set('zlib.output_compression', 'Off');
ini_set('output_buffering', 'Off');
// clean output buffers
for ($i = 0; $i < ob_get_level(); $i++) {
ob_end_clean();
if ($i > 10) {
break;
}
}
// content-type based on extension
$types = array('default' => array('type' => 'application/octet-stream', 'attach' => true), 'mp3' => 'audio/mpeg', 'mov' => 'video/quicktime', 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'gif' => 'image/gif', 'pdf' => 'application/pdf', 'zip' => array('type' => 'application/zip', 'attach' => true), 'doc' => array('type' => 'application/msword', 'attach' => true));
// get type
$ext = file::ext($fname);
$t = isset($types[$ext]) ? $types[$ext] : current($types);
if (!is_array($t)) {
$t = array('type' => $t);
}
// headers
$id = str::bc36(time());
$chunk = 1024 * 1024;
$time_limit = (int) ($chunk / 100);
$filesize = filesize($fname);
header("Cache-Control:");
header("Cache-Control: public");
header("Pragma: ");
header('Content-Type: ' . $t['type']);
header('Content-Disposition: ' . ($t['attach'] ? 'attachment' : 'inline') . ';' . ' filename="' . basename($fname) . '"');
//' filename="'.file::name($fname).'-'.$id.'.'.file::ext($fname).'"');
header("Content-Transfer-Encoding: binary\n");
// check if http_range is sent by browser (or download manager)
header("Accept-Ranges: bytes");
if (isset($_SERVER['HTTP_RANGE'])) {
list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']);
str_replace($range, "-", $range);
$filesize2 = $filesize - 1;
$new_length = $filesize2 - $range;
header("HTTP/1.1 206 Partial Content");
header("Content-Length: {$new_length}");
header("Content-Range: bytes {$range}{$filesize2}/{$filesize}");
$filesize = $new_length;
} else {
$filesize2 = $filesize - 1;
header("Content-Range: bytes 0-{$filesize2}/{$filesize}");
}
header("Content-Length: " . $filesize);
// draw
$fp = fopen($fname, 'rb');
if ($fp) {
// resume
if ($range > 0) {
fseek($fp, $range);
}
// send
while (!feof($fp) and connection_status() == 0) {
set_time_limit($time_limit);
$content = fread($fp, $chunk);
echo $content;
ob_flush();
flush();
$sent += strlen($content);
unset($content);
//funx::debug("$id sent ".(int)($sent/1024)."k".
// ", memory used ".(int)(memory_get_usage(true)/1024)."k".
// ", time limit ".(int)($time_limit/60)."m");
}
fclose($fp);
}
funx::debug("{$id} done ({$sent} of {$filesize}) (connection_status==" . (int) connection_status() . ")");
return !connection_aborted() and connection_status() == 0 and $sent >= $filesize;
}
示例11: file_ext
/**
* 返回后缀 如.jpg
*
*
* @param string $url
* @return string
*/
function file_ext($url)
{
return file::ext($url);
}