当前位置:  ▪判断php数组维度(php数组长度)的方法 iis7站长之家
本页文章导读:
    ▪有关PHP数组的使用技巧      分享一个php数组的应用实例,从中学习些php数组的应用技巧。 问题: 使用简单的方法,统计以下数据中国家数以及属于该国家的省份出现的次数。 完整代码:   代码示例: <?php $arr = arr.........
    ▪PHP上传多文件、多图片的示例代码      本节内容: php上传多文件、多图片。 实现: 1,在同级目录下建立upload文件夹 2,保存以下代码为文件upload.php。 代码:   代码示例: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /.........
    ▪php检测字符串编码是否为utf8编码的5种方法      本节主要内容: 检测字符串编码是否为utf8编码的方法 方法一:   代码示例: function mb_is_utf8($string)     {         return mb_detect_encoding($string, 'UTF-8') === 'UTF-8';//新发现     }   方.........

[1]有关PHP数组的使用技巧
    来源: 互联网  发布时间: 2013-12-24

分享一个php数组的应用实例,从中学习些php数组的应用技巧。

问题:
使用简单的方法,统计以下数据中国家数以及属于该国家的省份出现的次数。

完整代码:
 

代码示例:

<?php
$arr = array(
    array('id'=>1,'cid' => 1, 'country' => '中国','province'=>'湖南'),
    array('id'=>2,'cid' => 1, 'country' => '中国','province'=>'湖南'),
    array('id'=>3,'cid' => 3, 'country' => '日本','province'=>'名古屋'),
    array('id'=>4,'cid' => 3, 'country' => '日本','province'=>'东京'),
    array('id'=>5,'cid' => 1, 'country' => '中国','province'=>'北京'),
    array('id'=>6,'cid' => 1, 'country' => '中国','province'=>'山东'),
    array('id'=>7,'cid' => 1, 'country' => '中国','province'=>'山东'),
    array('id'=>8,'cid' => 2, 'country' => '美国','province'=>'安大略'),
    array('id'=>9,'cid' => 2, 'country' => '美国','province'=>'安大略'),
    array('id'=>10,'cid' => 3, 'country' => '日本','province'=>'名古屋'),
);

//参考答案:
/*
  对数据的操作基本都是对数组中数据进行重新构造,学会如何构造数组的结构也就掌握了数据的使用方法。这道题目首页需要构造最后要输出的数组结构,这个数组结构可以是最终的,也可以是间接的。下面就是一种数组构造的方式:
$ary =array(
    '中国'=>array('湖南'=>2,'山东'=>2,'北京'=>1),
    '日本'=>array('名古屋'=>2,'东京'=>1),
    '美国'=>array(),
);
*/

$data = array();
foreach($arr as $k=>$v){
    @$data[$v['country']][$v['province']] +=1;    //决该题目的重点,多多体会下。
}
//数据最终的结构
echo '国家:',count($data),'个<br>';
foreach($data as $k=>$v){
    echo '&nbsp;&nbsp;&nbsp;&nbsp;',$k,':',array_sum($v),'次';
    echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;省份:',count($v),'个<br>';
    foreach($v as $kk=>$vv){
        echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;',$kk,':',$vv,'次<br>';
    }

}
?>

输出结果:
国家:3个
    中国:5次        省份:3个
       湖南:2次
       北京:1次
       山东:2次
    日本:3次        省份:2个
       名古屋:2次
       东京:1次
    美国:2次        省份:1个
       安大略:2次
 
有兴趣的朋友,好好体味下上面代码中数组的应用技巧,好好理解这句:
 

代码示例:
  foreach($arr as $k=>$v){
    @$data[$v['country']][$v['province']] +=1;    //决该题目的重点,多多体会下。
}
 

掌握下php 数组的实用技巧。


    
[2]PHP上传多文件、多图片的示例代码
    来源: 互联网  发布时间: 2013-12-24

本节内容:
php上传多文件、多图片。

实现:
1,在同级目录下建立upload文件夹
2,保存以下代码为文件upload.php。

代码:
 

代码示例:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<?php    
 $uptypes=array( 
//上传文件的ContentType格式 
        'image/jpg', 
        'image/jpeg', 
        'image/png', 
        'image/pjpeg', 
        'image/gif', 
        'image/bmp', 
        'image/x-png', 
        'application/msword',//doc 
        'application/vnd.openxmlformats-officedocument.wordprocessingml.document',//docx 
        'application/vnd.openxmlformats-officedocument.presentationml.presentation',//pptx  
        'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',//xlsx 
        'text/plain' 
                ); 
/**
* php多文件、多图片上传
* by www.
*/
$max_file_size=2000000; //上传文件大小限制, 单位BYTE 
$dir="upload/"; //上传文件路径 
if ($_SERVER['REQUEST_METHOD'] == 'POST') 

   $file = $_FILES['upfile']['name']; 
   foreach($file as $key=>$item){ 
   if($item != ''){ 
         if (!is_uploaded_file($_FILES['upfile']['tmp_name'][$key]))//是否存在文件 
         { 
            echo "图片不存在!";   
            exit; 
         } 
        if($max_file_size < $_FILES['upfile']['size'][$key])//检查文件大小 
        { 
            echo "文件太大!"; 
            exit; 
        } 
   if(!file_exists($dir)) 
       { 
          mkdir($dir); 
       } 
    $filename=$_FILES['upfile']['tmp_name'][$key]; 
    $image_size = getimagesize($filename); 
    $pinfo = pathinfo($file[$key]); 
 
    $ftype = $pinfo['extension']; 
    $destination = $dir.time().$file[$key]; 
    if (file_exists($destination) && $overwrite != true) 
    { 
        echo "同名文件已经存在了"; 
        exit; 
    } 
 
    if(!move_uploaded_file ($filename, $destination)) 
    { 
        echo "移动文件出错"; 
        exit; 
    } 
    $pinfo=pathinfo($destination); 
    $fname=$pinfo['basename']; 
    echo " <font color=red>已经成功上传</font><br>文件名:  <font color=blue>".$dir.$fname."</font><br>"; 
    echo " 宽度:".$image_size[0]; 
    echo " 长度:".$image_size[1]; 
    echo "<br> 大小:".$_FILES['upfile']['size']." bytes"; 
 
}                
 
    echo "<br>图片预览:<br>"; 
    echo "<img src=/index.html"".$destination."\" width=".($image_size[0]*(1/4))." height=".($image_size[1]*(1/4)); 
    echo " alt=\"图片预览:\r文件名:".$destination."\r上传时间:\">"; 
    echo "<br>"; 
        } 
    } 
 
 ?> 
<form method="post" enctype="multipart/form-data" action="" name="ff" id="ff" > 
    <input type="file" name="upfile[]" /> 
    <input type="file" name="upfile[]" /> 
    <label> 
      <input type="submit" name="submit" id="submit" value="按钮"/> 
    </label> 
 </form> 

说明:
上传时,需要上传两个,否则会报错。
代码不是很完善,只是给出一个思路,仅供学习参考。

您可能感兴趣的文章:
PHP图片上传类(多文件上传、缩略图、水印)
php 图片上传类的实现代码
php图片上传并保存到MySql数据库的实现代码
PHP图片上传的实例代码
PHP图片上传的简单例子
php图片加水印的小例子
PHP设置图片文件上传大小的方法
php上传多文件与多图片的实例代码
php 图片处理类(附实例)
php图片文件上传类(可自动生成缩略图)
php 上传图片的函数示例
PHP上传图片的简单例子(入门参考)
php 文件上传类与图片处理类的实现代码
PHP 图片文件上传的原理分析与代码
php 图片处理类(简单易用)


    
[3]php检测字符串编码是否为utf8编码的5种方法
    来源: 互联网  发布时间: 2013-12-24

本节主要内容:
检测字符串编码是否为utf8编码的方法

方法一:
 

代码示例:
function mb_is_utf8($string)    
{    
    return mb_detect_encoding($string, 'UTF-8') === 'UTF-8';//新发现    
}  

方法二:
 

代码示例:
function preg_is_utf8($string)    
{    
    return preg_match('/^.*$/u', $string) > 0;//preg_match('/^./u', $string)    
}  

方法三:
 

代码示例:
function is_utf8_1($str)    
{    
    $c=0; $b=0;    
    $bits=0;    
    $len=strlen($str);    
    for($i=0; $i<$len; $i++){    
        $c=ord($str[$i]);    
        if($c > 128){  // www.
            if(($c >= 254)) return false;    
            elseif($c >= 252) $bits=6;    
            elseif($c >= 248) $bits=5;    
            elseif($c >= 240) $bits=4;    
            elseif($c >= 224) $bits=3;    
            elseif($c >= 192) $bits=2;    
            else return false;    
            if(($i+$bits) > $len) return false;    
            while($bits > 1){    
                $i++;    
                $b=ord($str[$i]);    
                if($b < 128 || $b > 191) return false;    
                $bits--;    
            }    
        }    
    }    
    return true;    
}

方法四:
 

代码示例:
function is_utf8_2($string) {    
   
    // From http://w3.org/International/questions/qa-forms-utf-8.html    
    return preg_match('%^(?:   
          [\x09\x0A\x0D\x20-\x7E]            # ASCII   
        | [\xC2-\xDF][\x80-\xBF]             # non-overlong 2-byte   
        |  \xE0[\xA0-\xBF][\x80-\xBF]        # excluding overlongs   
        | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}  # straight 3-byte   
        |  \xED[\x80-\x9F][\x80-\xBF]        # excluding surrogates   
        |  \xF0[\x90-\xBF][\x80-\xBF]{2}     # planes 1-3   
        | [\xF1-\xF3][\x80-\xBF]{3}          # planes 4-15   
        |  \xF4[\x80-\x8F][\x80-\xBF]{2}     # plane 16   
    )*$%xs', $string);    
   
} // function is_utf8   

方法五:
 

代码示例:
function isUTF8($string)    
{    
    return (utf8_encode(utf8_decode($string)) == $string);    
}

    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3