PHP读取文件到数组,并统计相同元素的个数,按元素个数的多少排序

PHP读取文件到数组,并统计相同元素的个数,按元素个数的多少排序,第1张

$file = 'atxt';  // 含路径文件名

$txt = file_get_contents($file); // 读取文件全部内容

$arr = implode(PHP_EOL, $txt); // 将文件内容以换行符分割成数组

$count = array_count_values($arr); // 统计数组中各个值出现的次数

arsort($count ); // 按数组值(统计数)对数组排序

$result = array_keys($count); // 得到按重复次数排序的值为订单号的索引数组

很简单的,你这个数组是

$array = Array

(

[0] => 蚂蚁

[1] => 学院

[2] => 欢迎

[3] => 您的

[4] => 光临

)

这样的话,那你取第一个值就这样去: $array[0] 这样就代表第一个值,也就是蚂蚁。以此类推

//你可以用下面的方式试下,我这边考虑到的是遍历哈,假设上面的数组名字为$cate_arr

foreach($cate_arr as $v){

    $values = array_values($v);

    if(in_array("分类1", $values)) {

        $id = $v["id"]; //这样就可以得到分类1的ID值了

        break;

    }

}

1、本次仅代表个人意见,不喜勿喷

2、以下代码使用到的知识点包括,函数递归调用,数组去重,数组排序,以及数组遍历

3、本次测试了三个例子,例子的结果见程序后附图

/ 代码开始 begin/

<php

/

 @author biking

 @time 21015-11-18

 @function 获取数组的维数

 /

function getArrayNum($array,$n,&$num){

    if(!is_array($array)){

        return ;

    }

    

    foreach($array as $val){

        if(is_array($val)){

            $tmpn = $n+1;

            getArrayNum($val, $tmpn,$num);//递归调用

        }else{

            array_push($num,$n);

            continue;

        }

    }

}

/测试例子/

//$myarray = array(1,2,array(11,22),3,array(33,44,array(111,222,333)));//例子1

//$myarray = "hello";//例子2

$myarray = array(2,3,array('hei','this'));//例子3

$num = array();

getArrayNum($myarray, 1,$num);//首次调用

if(empty($num)){//进行判断

    echo "<meta charset='utf-8' />不是数组!";

    die();

}

//数组去重

array_unique($num);

//升序排序

sort($num);

//输出测试的数组的维数

echo "<meta charset='utf-8' />该例子的数组维数是:"$num[count($num)-1];

/ 代码结束  end/

例子1结果

例子2结果

不是数组

例子3结果

以上就是关于PHP读取文件到数组,并统计相同元素的个数,按元素个数的多少排序全部的内容,包括:PHP读取文件到数组,并统计相同元素的个数,按元素个数的多少排序、php 如何读取数组、PHP 怎么从数组中取值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9313623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存