php 数组过滤函数 array_filter与array_unique

 更新时间:2016年11月25日 17:26  点击:1481
在php中我给大家介绍两个比较常用的数组过滤函数array_filter与array_unique了,一个是过滤数组空值,一个是过滤数组重复值,我们现在一起来看看。

语法
array_filter(array,function)
参数     描述
array     必需。规定输入的数组。
function     自定义函数的名称,为空时过滤掉所有值为flase的元素

 代码如下 复制代码

<?php
 
function odd($var) {
    return($var & 1);
}
 
function even($var) {
    return(!($var & 1));
}
 
$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array(6, 7, 8, 9, 10, 11, 12);
 
echo "Odd :n";
print_r(array_filter($array1, "odd"));
echo "Even:n";
print_r(array_filter($array2, "even"));
/*
 
Odd :
Array
(
   
[a] => 1
   
[c] => 3
   
[e] => 5
)
Even:
Array
(
   
[0] => 6
   
[2] => 8
   
[4] => 10
   
[6] => 12
)
*/

过滤掉PHP数组中的重复值

去除一个数组中的重复值,可以使用foreach方法,也可以使用array_unique方法,下面的代码两种方法都使用了

 代码如下 复制代码

<?php

$arrF = array();
$arrS = array();
$intTotal = 100;
$intRand = 10;
for($i=0; $i < $intTotal; $i++)
{
 $arrF[] = rand(1, $intRand);
 $arrS[] = rand(1, $intRand);
}
$arrT = array_merge($arrF, $arrS);
$arrRF = array();
$intStart = time();
foreach($arrT as $v)
{
 if(in_array($v, $arrRF))
 {
  continue;
 }
 else
 {
  $arrRF[] = $v;
 }
}
$intEnd = time();
$intTime = $intEnd-$intStart;
echo "With Continue,Spend time:$intTime<br/>";
$intStart1 = time();
$arrRS = array_unique($arrT);
$intEnd2 = time();
$intTime2 = $intEnd2-$intStart1;
echo "With array_unique function,Spend time:($intTime2)";
echo "<pre>";
print_r($arrT);
print_r($arrRF);
print_r($arrRS);
echo "</pre>";

?>


在$intTotal比较小的情况下,比如说1000以内,$intRand的取值基本不影响结果,两者执行的时间都差不多。

测试$intTotal 大于10000时,$intRand取值100时,使用array_unique的效率要高于foreach循环判断,$intRand=10,两者执行时间一致。

因此,可以得出结论,当数组容量不大,大概在1000以内时,使用两者的执行效率差不多。

当数组容量比较大时(具体应该到什么值,我没有详细测试,感兴趣的可以确定一下这个值),随着$intRand的逐渐增大,array_unique的表现更好,我不使用$intTotal/$intRand这个比值,是因为,感觉并不是成比例变化,但是基本会遵循比值越大,array_unique表现越好。

综上所述,在过滤数组重复值的时候,建议使用array_unuique,数组不大的时候两者效率等同,而array_unique使用当然让你的代码一下子减了好几行,数组容量过大时,函数的表现更好


二维数组去重复项函数

 PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 的 array_unique函数

 代码如下 复制代码

function unique_arr($array2D,$stkeep=false,$ndformat=true)
{
 // 判断是否保留一级数组键 (一级数组键可以为非数字)
 if($stkeep) $stArr = array_keys($array2D);

 // 判断是否保留二级数组键 (所有二级数组键必须相同)
 if($ndformat) $ndArr = array_keys(end($array2D));

 //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
 foreach ($array2D as $v){
  $v = join(",",$v);
  $temp[] = $v;
 }

 //去掉重复的字符串,也就是重复的一维数组
 $temp = array_unique($temp);

 //再将拆开的数组重新组装
 foreach ($temp as $k => $v)
 {
  if($stkeep) $k = $stArr[$k];
  if($ndformat)
  {
   $tempArr = explode(",",$v);
   foreach($tempArr as $ndkey => $ndval) $output[$k][$ndArr[$ndkey]] = $ndval;
  }
  else $output[$k] = explode(",",$v);
 }

 return $output;
}

测试

$array2D = array('first'=>array('title'=>'1111','date'=>'2222'),'second'=>array('title'=>'1111','date'=>'2222'),'third'=>array('title'=>'2222','date'=>'3333'));


print_r($array2D);
print_r(unique_arr($array2D,true));

由于N久之前做了一些非常不好的动作导致网站内容页面有一些垃圾数据,今天早上整了一个移除字符串超链接文本方法,下面我结合正则来处理。

下面实例的功能是过滤所有的html标签,并替换h1-h5之前的所有文字

 代码如下 复制代码

for( $i=1;$i<=5;$i++ )
{

 $sql ="SELECT * FROM `表名` WHERE `字段` like '<h".$i.">%</h".$i.">%' ";
 
 $query = mysql_query( $sql ) or die(mysql_error());
 
 if( mysql_num_rows( $query ) )
 {
  while ( $rs = mysql_fetch_array( $query ) )
  {
   //print_r($rs);
   
   $t = stripslashes($rs['字段']);
   $str = nl2br(strip_tags(addslashes(removelink($t))));
   $sql ="update 表名 set 字段='$str' where id=".$rs['id'];
   
   
   if( mysql_query($sql))
   {
    echo $rs['id'].'成功<br />';
   }
   else
   {
    echo mysql_error();
   } 
  }
 }
 else
 {
  echo '己更新过没有记录了'.$sql.'<br />';
 }

}

 
function removelink($t)
{
 //$str = preg_replace("/<a[^>]*href=[^>]*>|</[^a]*a[^>]*>/i","",$t);
 
 $str = preg_replace("/(?is)(?<=<h1>).*?(?=</h1>)/i","",$t);
 $str = preg_replace("/(?is)(?<=<h2>).*?(?=</h2>)/i","",$str);
 $str = preg_replace("/(?is)(?<=<h3>).*?(?=</h3>)/i","",$str);
 $str = preg_replace("/(?is)(?<=<h4>).*?(?=</h4>)/i","",$str);
 $str = preg_replace("/(?is)(?<=<h5>).*?(?=</h5>)/i","",$str);

 return re_h($str);
}

function re_h($str)
{
 $str = str_replace('<h1>','',$str);
 $str = str_replace('<h2>','',$str);
 $str = str_replace('<h3>','',$str);
 $str = str_replace('<h4>','',$str);
 $str = str_replace('<h5>','',$str);
 $str = str_replace('</h1>','',$str);
 $str = str_replace('</h2>','',$str);
 $str = str_replace('</h3>','',$str);
 $str = str_replace('</h4>','',$str);
 $str = str_replace('</h5>','',$str); 
 return $str;
}

上面用到了下面的正则表达式

 代码如下 复制代码

preg_replace("/(?is)(?<=<h1>).*?(?=</h1>)/i","",$t);

这就是核心代码了


比如需要将文本中的超链接内容去除,这个时候就需要用到正则表达式了。比如你可以用$str = preg_replace("/<a[^>]*href=[^>]*>|</[^a]*a[^>]*>/i","",$strhtml); 这段来实现需求,如果想要更多解决方法,可以参看以下的。

1、删除内容中的超链接

 代码如下 复制代码

ereg_replace('<a([^>]*)>([^<]*)</a>','<font color="red">\2</font>',$content);

ereg_replace("<a [^>]*>|</a>","",$content); 

 
2、消除包含特定词的超链接

 代码如下 复制代码

$find="this string is my find";
$string='<font color="red">替换掉了</font>';//将超链接替换成的内容
echo ereg_replace('<a([^>]*)>([^<]*'.$find.'[^>]*)</a>','<font color="red">\2</font>',$content);

本站原创,转载必须注明来源www.111cn.net 否则后果自负

利用php curl发送json数据与curl post其它数据是一样的,下面我来给大家总结几个关于curl post发送json数据实例,希望能加深各位对curl post json数据的理解吧。

例1

 代码如下 复制代码

$data = array("name" => "Hagrid", "age" => "36");                                                                   
$data_string = json_encode($data);                                                                                  
 
$ch = curl_init('http://api.local/rest/users');                                                                     
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                                                                    
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                                                                 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                                                                     
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                         
    'Content-Type: application/json',                                                                               
    'Content-Length: ' . strlen($data_string))                                                                      
);                                                                                                                  
 
$result = curl_exec($ch);

例2

 代码如下 复制代码

   function http_post_data($url, $data_string) {

        $ch = curl_init();
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json; charset=utf-8',
            'Content-Length: ' . strlen($data_string))
        );
        ob_start();
        curl_exec($ch);
        $return_content = ob_get_contents();
        ob_end_clean();

        $return_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        return array($return_code, $return_content);
    }

$url  = "http://xx.xx.cn";
$data = json_encode(array('a'=>1, 'b'=>2));

list($return_code, $return_content) = http_post_data($url, $data);

例3

 代码如下 复制代码

$data=' {
     "button":[
     {   
          "type":"click",
          "name":"今日歌曲",
          "key":"V1001_TODAY_MUSIC"
      },
      {
           "type":"click",
           "name":"歌手简介",
           "key":"V1001_TODAY_SINGER"
      },
      {
           "name":"菜单",
           "sub_button":[
            {
               "type":"click",
               "name":"hello word",
               "key":"V1001_HELLO_WORLD"
            },
            {
               "type":"click",
               "name":"赞一下我们",
               "key":"V1001_GOOD"
            }]
       }]
 }';

$ch = curl_init($urlcon); //请求的URL地址
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//$data JSON类型字符串
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data)));
$data = curl_exec($ch);
print_r($data);//创建成功返回:{"errcode":0,"errmsg":"ok"}

小结,我们发现最核心的一句代码就是Content-Type: application/json;这个是文件格式类型了。

checkbox在html中是以数组形式存储的,如果我们要获取用户选择了我个checkbox值我们可以利用遍历或直接把数组利用implode转换在字符进行存储。

php要求同名表单元素用数组形式命名,并赋予value。否则他不能分解。

例1:利用foreach遍历checkbox

 代码如下 复制代码
<input type=checkbox name="chk[]" value=1>
<input type=checkbox name="chk[]" value=2>
<input type=checkbox name="chk[]" value=3>

提交后,用$_POST['chk']访问。数组中的元素为选中的复选框的值

PHP代码:

 代码如下 复制代码

 <?php
foreach( $_POST["chk"] as $i=>$a )
  { echo $i."==>".$a."<br />"; }
//或者使用$_POST["chk"][0]单独使用
?>

结果:

0=>1
1=>2
2=>3

例2利用explode

 代码如下 复制代码


<table> <form action="index.php" method="post"> <tr> <td> <ol> <li><input type="checkbox" name="lang[]" id="lang" value="1" />中文普通话</li> <li><input type="checkbox" name="lang[]" id="lang" value="11" />日语</li> <li><input type="checkbox" name="lang[]" id="lang" value="10" />朝鲜语</li> <li><input type="checkbox" name="lang[]" id="lang" value="9" />西班牙语</li> <li><input type="checkbox" name="lang[]" id="lang" value="8" />俄语</li> <li><input type="checkbox" name="lang[]" id="lang" value="7" />德语</li> <li><input type="checkbox" name="lang[]" id="lang" value="6" />法语</li> <li><input type="checkbox" name="lang[]" id="lang" value="5" />英语</li> <li><input type="checkbox" name="lang[]" id="lang" value="4" />少数民族语言</li> <li><input type="checkbox" name="lang[]" id="lang" value="3" />中文闽南语</li> <li><input type="checkbox" name="lang[]" id="lang" value="2" />中文粤语</li> <li><input type="checkbox" name="lang[]" id="lang" value="12" />其它国家语言</li> </ol> </td> </tr> <tr> <td> <input name="submit" type="submit" value="submit" /> </td> </tr> </form> </table> <?php $CACHE['lang'] = array( '1'=>'中文普通话', '11'=>'日语', '10'=>'朝鲜语', '9'=>'西班牙语', '8'=>'俄语', '7'=>'德语', '6'=>'法语', '5'=>'英语', '4'=>'少数民族语言', '3'=>'中文闽南语', '2'=>'中文粤语', '12'=>'其它国家语言', ); $lang = $_POST['lang']; if (is_array($lang)){ $cbsports = '<ol>'; foreach ($CACHE['lang'] as $key => $val) { $cbsports .= '<li><input type="checkbox" name="lang[]" id="lang" value="'.$key.'" '.(in_array($key,$lang) ? 'checked="checked"' : '').' />'.$val.'</li>'; } $cbsports .= '</ol>'; echo $cbsports; } else { echo '请勾选后提交'; } ?>

如果需要保存到数据库,按照下面的方式处理后,把$expr的值存储即可。

 代码如下 复制代码

if(!emptyempty($lang)) { $expr = join(",", $lang); }

显示的时候再这样处理后就可以重新生成原来的数组。

 代码如下 复制代码

$lang = explode(',',$row(lang));

备注:使用serialize() 和unserialize() 可以直接存储数组,不过字段要text类型,不太理想。

例3、需要同时删除多项,或同时修改多项记录

要点:

1,前端表单中name要加[],如:<input type="hidden" name="id[]" value="{$vo.id}">
2,后端接受如:$id = $_POST [id] [$i];     $i为for中的循环变量,当$i相同时可以使得$_POST [id] [$i]和$_POST [name] [$i]为一一对应;

一,前端表单:
 

 代码如下 复制代码

 

<form name="form1" method="post" action="__GROUP__/Repair/updateList">
  对所选操作:<input type="submit" value="保 存" class="btn btn-primary"> <br>
            <table id="checkList" class="list table table-hover">
                <tr>
                    <th scope="col"><input id="check" type="checkbox"
                        onclick="checkAll()" /> 全选</th>
                    <th scope="col">主题</th>
                    <th scope="col">校区</th>
                    <th scope="col">房间</th>
                    <th scope="col">报修人</th>
                    <th scope="col">联系电话</th>
                    <th scope="col">报修时间</th>
                    <th scope="col">审核</th>
                    <th scope="col">报修状态</th>
                </tr>
                <volist name="list" id="vo">
                <tr>
                    <td><input type="checkbox" name="key" value="{$vo.id}">{$vo.id}<input type="hidden" name="id[]" value="{$vo.id}"></td>
                    <td>{$vo.topic}</td>
                    <td>{$vo.xiaoqu}</td>
                    <td>{$vo.room}</td>
                    <td>{$vo.pname}</td>
                    <td>{$vo.phone}</td>
                    <td>{$vo.create_time|date='Y-m-d H:i:s',###}</td>
                    <td><select name="check[]"><switch name="vo.check">
                            <case value="0">
                            <option value="0" selected="selected">未审核</option>
                            <option value="1">审核</option>
                            </case> <default />
                            <option value="0">未审核</option>
                            <option value="1" selected="selected">审核</option>
                            </switch></select></td>
                    <td><select name="status[]"><switch name="vo.status">
                            <case value="已修">
                            <option value="未修">未修</option>
                            <option value="任务已下">任务已下</option>
                            <option value="已修" selected="selected">已修</option>
                            </case> <case value="任务已下">
                            <option value="未修">未修</option>
                            <option value="任务已下" selected="selected">任务已下</option>
                            <option value="已修">已修</option>
                            </case> <default />
                            <option value="未修" selected="selected">未修</option>
                            <option value="任务已下">任务已下</option>
                            <option value="已修">已修</option>
                            </switch></select></td>
                </tr>
                </volist>
            </table>
        </form>


二,服务端处理代码
 

 代码如下 复制代码

 

<?php
/**
     * 批量修改状态
     */
    public function updateList() {
        $result = false;
        for($i = 0; $i < count ( $_POST [id] ); $i ++) {
           
            $id = $_POST [id] [$i];
            $check = $_POST [check] [$i];
            $status = $_POST [status] [$i];
           
            // 保存登录信息
            $Repair = M ( 'Repair' );
            $data ['id'] = $id;
            $data ['check'] = $check;
            $data ['status'] = $status;
            $result = $Repair->save ( $data );
        }
       
        if (false !== $result) {
            $this->success ( '修改成功!' );
        } else {
            $this->error ( '修改失败!' );
        }
    }

本文章来给各位同学介绍一个关于PHP重启路由器以更换IP地址程序,如果你对此有兴趣不防进入参考哦。
在采集大批量数据时常常会触发对方服务器的“自我保护”,请求过于频繁就限制访问。这时需要停留很长一段时间(十几分钟到几十分钟不等)才能恢复访问,这样采集数据的速度就受到非常大的限制。
解决方法有两个:
1 通过图片识别绕过验证码机制,告诉服务器:我不是蜘蛛,我是人。不信你瞧,我能看懂验证码。
2 更换IP,告诉服务器:我不是张三,我是李四。不信你瞧,我的IP地址和张三的不一样。
第一个方法难度稍高一点而且不靠谱,等哪天对方服务器升级了验证码了,这边也得跟进,麻烦多;而ISP(电信、联通、移动)那儿有很多IP,每次联网都会分配一个新的IP,因此方法二比较好。
以我的TP-LINK路由器为例,找到“网络参数”>“WAN口设置”,可以看到“自动连接”设置和“断线”按钮。每次点击“断线”按钮,就向ISP重新拨号,此时就换了一个IP。但大批量数据的采集需要的时间比较长,不可能总有人在旁边守着,最好能在PHP代码中,一旦发现被限制了就重启一次,这就回到本文的主题了:《通过PHP函数重启路由器以更换IP》
打开chrome浏览器的调试模式,然后点击“断线”按钮,看“Network”网络请求,可以看到实际执行的地址是:“http://192.168.0.1/userRpm/PPPoECfgRpm.htm?wantype=2&acc=65541234&psw=Hello123World&VnetPap=0&linktype=2&Disconnect=%B6%CF+%CF%DF”
然后模拟请求这个地址,经测试确实可以更换IP地址(通过http://api.akcms.com/myip.php可以看到当前IP)。接下来的就简单了:就用PHP使用Curl组件来实现这个请求的过程,我封装了一个函数resetip,具体代码如下:
 代码如下 复制代码
<?php
//本脚本测试重启路由器的WLAN连接
resetip();

function resetip() {
	$username = 'admin';
	$password = '123456';
	
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, 'http://192.168.0.1/userRpm/PPPoECfgRpm.htm?wantype=2&acc=65541234&psw=Hello123World&VnetPap=0&linktype=2&Disconnect=%B6%CF+%CF%DF');
	curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_exec($ch);
	curl_close($ch);
}
?>
高亮处需要根据自己的情况修改,路由器地址有的是192.168.1.1,重启地址也各有不同,但大同小异,自己改改。
[!--infotagslink--]

相关文章

  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python 图片转数组,二进制互转操作

    这篇文章主要介绍了Python 图片转数组,二进制互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-09
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • php数组操作 键名比较 差集 交集赋值

    本文章提供在量的数据中级操作实例有如对键名比较计算数组的差集 计算差集 给指定数组中插入一个元素 反转数组 交集赋值新的数组实例。 //定义回调函数 funct...2016-11-25
  • C#二维数组基本用法实例

    这篇文章主要介绍了C#二维数组基本用法,以实例形式分析了C#中二维数组的定义、初始化、遍历及打印等用法,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • C#数组的常用操作方法小结

    Array数组在C#中同样是最基本的数据结构,下面为大家C#数组的常用操作方法小结,皆为细小的代码段,欢迎收看收藏...2020-06-25
  • php curl模拟post请求和提交多维数组的示例代码

    下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下: <&#63;php$uri = "http://www.cnblogs.com/test.php";//这里换成自己的服务器的地址// 参数数组$data = array ( 'name' => 'tanteng'// 'passwor...2015-11-24
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04
  • PHP函数分享之curl方式取得数据、模拟登陆、POST数据

    废话不多说直接上代码复制代码 代码如下:/********************** curl 系列 ***********************///直接通过curl方式取得数据(包含POST、HEADER等)/* * $url: 如果非数组,则为http;如是数组,则为https * $header:...2014-06-07
  • C# 拷贝数组的几种方法(总结)

    下面小编就为大家带来一篇C# 拷贝数组的几种方法(总结)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • php中的foreach函数的2种用法

    Foreach 函数(PHP4/PHP5)foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。...2013-09-28
  • PHP 二维数组根据某个字段排序的具体实现

    本文记录的要实现的功能类似于 MySQL 中的 ORDER BY,上个项目中有遇到这样的一个需求。 要求:从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条。 遇到这个...2014-06-07
  • C语言中free函数的使用详解

    free函数是释放之前某一次malloc函数申请的空间,而且只是释放空间,并不改变指针的值。下面我们就来详细探讨下...2020-04-25