当前位置: 编程技术>php
本页文章导读:
▪php 二维数组按指定的键值排序的代码 二维数组排序代码。
代码示例:
<?php
//二维数组 按键值 排序
function array_sort($array,$keys,$type='desc'){
if(!isset()($array) || !is_array($array) || empty($array)){
return '';
}
if(!isset($keys) || trim($keys)==''){.........
▪php 根据二进制(文件头)信息判断文件类型的方法 根据文件头判断文件类型的完整代码。
代码示例:
<?php
$files = array('./test.jpg', 'test.png');
$fileTypes = array(
7790 => 'exe',
7784 => 'midi',
8075 => 'zip',
8297 => 'rar',.........
▪php强制文件下载(避免文件或图片直接在浏览器中打开) 以下代码摘自FLEAPHP框架自带的文件下载助手类。
代码示例:
<?php
/**
* FLEA_Helper_SendFile 类用于向浏览器发送文件
*
* 利用 FLEA_Helper_SendFile,应用程序可以将重要的文件保存在
* 浏览器.........
[1]php 二维数组按指定的键值排序的代码
来源: 互联网 发布时间: 2013-12-24
二维数组排序代码。
代码示例:
<?php
//二维数组 按键值 排序
function array_sort($array,$keys,$type='desc'){
if(!isset()($array) || !is_array($array) || empty($array)){
return '';
}
if(!isset($keys) || trim($keys)==''){
return '';
}
if(!isset($type) || $type=='' || !in_array(strtolower()($type),array('asc','desc'))){
return '';
}
$keysvalue=array();
foreach($array as $key=>$val){
$val[$keys] = str_replace()('-','',$val[$keys]);
$val[$keys] = str_replace(' ','',$val[$keys]);
$val[$keys] = str_replace(':','',$val[$keys]);
$keysvalue[] =$val[$keys];
}
asort($keysvalue); //key值排序
reset($keysvalue); //指针重新指向数组第一个
foreach($keysvalue as $key=>$vals) {
$keysort[] = $key;
}
$keysvalue = array();
$count=count($keysort);
if(strtolower($type) != 'asc'){
for($i=$count-1; $i>=0; $i--) {
$keysvalue[] = $array[$keysort[$i]];
}
}else{
for($i=0; $i<$count; $i++){
$keysvalue[] = $array[$keysort[$i]];
}
}
return $keysvalue;
} //by www.
?>
//二维数组 按键值 排序
function array_sort($array,$keys,$type='desc'){
if(!isset()($array) || !is_array($array) || empty($array)){
return '';
}
if(!isset($keys) || trim($keys)==''){
return '';
}
if(!isset($type) || $type=='' || !in_array(strtolower()($type),array('asc','desc'))){
return '';
}
$keysvalue=array();
foreach($array as $key=>$val){
$val[$keys] = str_replace()('-','',$val[$keys]);
$val[$keys] = str_replace(' ','',$val[$keys]);
$val[$keys] = str_replace(':','',$val[$keys]);
$keysvalue[] =$val[$keys];
}
asort($keysvalue); //key值排序
reset($keysvalue); //指针重新指向数组第一个
foreach($keysvalue as $key=>$vals) {
$keysort[] = $key;
}
$keysvalue = array();
$count=count($keysort);
if(strtolower($type) != 'asc'){
for($i=$count-1; $i>=0; $i--) {
$keysvalue[] = $array[$keysort[$i]];
}
}else{
for($i=0; $i<$count; $i++){
$keysvalue[] = $array[$keysort[$i]];
}
}
return $keysvalue;
} //by www.
?>
[2]php 根据二进制(文件头)信息判断文件类型的方法
来源: 互联网 发布时间: 2013-12-24
根据文件头判断文件类型的完整代码。
代码示例:
<?php
$files = array('./test.jpg', 'test.png');
$fileTypes = array(
7790 => 'exe',
7784 => 'midi',
8075 => 'zip',
8297 => 'rar',
225216 => 'jpg',
7173 => 'gif',
6677 => 'bmp',
13780 => 'png',
);
foreach($files as $file) {
$fp = fopen($file, 'rb');
$bin = fread($fp, 2); // 只读头两个字节
fclose($fp);
$strInfo = @unpack("C2chars", $bin);
$typeCode = intval($strInfo['chars1'].$strInfo['chars2']);
$fileType = isset()($fileTypes[$typeCode]) ? $fileTypes[$typeCode] : 'unknown';
echo $file , ' type : <b>', $fileType, '</b> code : <b>', $fileType, '</b><br />';
}
$files = array('./test.jpg', 'test.png');
$fileTypes = array(
7790 => 'exe',
7784 => 'midi',
8075 => 'zip',
8297 => 'rar',
225216 => 'jpg',
7173 => 'gif',
6677 => 'bmp',
13780 => 'png',
);
foreach($files as $file) {
$fp = fopen($file, 'rb');
$bin = fread($fp, 2); // 只读头两个字节
fclose($fp);
$strInfo = @unpack("C2chars", $bin);
$typeCode = intval($strInfo['chars1'].$strInfo['chars2']);
$fileType = isset()($fileTypes[$typeCode]) ? $fileTypes[$typeCode] : 'unknown';
echo $file , ' type : <b>', $fileType, '</b> code : <b>', $fileType, '</b><br />';
}
[3]php强制文件下载(避免文件或图片直接在浏览器中打开)
来源: 互联网 发布时间: 2013-12-24
以下代码摘自FLEAPHP框架自带的文件下载助手类。
代码示例:
<?php
/**
* FLEA_Helper_SendFile 类用于向浏览器发送文件
*
* 利用 FLEA_Helper_SendFile,应用程序可以将重要的文件保存在
* 浏览器无法访问的位置。然后通过程序将文件内容发送给浏览器。
* @site http://www.
*/
class FLEA_Helper_SendFile
{
/**
* 向浏览器发送文件内容
*
* @param string $serverPath 文件在服务器上的路径(绝对或者相对路径)
* @param string $filename 发送给浏览器的文件名(尽可能不要使用中文)
* @param string $mimeType 指示文件类型
*/
function sendFile($serverPath, $filename, $mimeType = 'application/octet-stream')
{
header("Content-Type: {$mimeType}");
$filename = '"' . htmlspecialchars()($filename) . '"';
$filesize = filesize($serverPath);
$charset = FLEA::getAppInf('responseCharset');//根据实际文件编码类型,如utf-8,gbk
header("Content-Disposition: attachment; filename={$filename}; charset={$charset}");
header('Pragma: cache');
header('Cache-Control: public, must-revalidate, max-age=0');
header("Content-Length: {$filesize}");
readfile($serverPath);
exit;
}
}
/**
* FLEA_Helper_SendFile 类用于向浏览器发送文件
*
* 利用 FLEA_Helper_SendFile,应用程序可以将重要的文件保存在
* 浏览器无法访问的位置。然后通过程序将文件内容发送给浏览器。
* @site http://www.
*/
class FLEA_Helper_SendFile
{
/**
* 向浏览器发送文件内容
*
* @param string $serverPath 文件在服务器上的路径(绝对或者相对路径)
* @param string $filename 发送给浏览器的文件名(尽可能不要使用中文)
* @param string $mimeType 指示文件类型
*/
function sendFile($serverPath, $filename, $mimeType = 'application/octet-stream')
{
header("Content-Type: {$mimeType}");
$filename = '"' . htmlspecialchars()($filename) . '"';
$filesize = filesize($serverPath);
$charset = FLEA::getAppInf('responseCharset');//根据实际文件编码类型,如utf-8,gbk
header("Content-Disposition: attachment; filename={$filename}; charset={$charset}");
header('Pragma: cache');
header('Cache-Control: public, must-revalidate, max-age=0');
header("Content-Length: {$filesize}");
readfile($serverPath);
exit;
}
}
最新技术文章: