PHP检查数组中可能缺少的数字,也可以理解为计算两个数组中元素的差集。那么这里我们就可以通过PHP中range和array_diff这两个函数来实现。
推荐参考学习:《PHP教程》
下面我们就结合具体的代码示例,为大家介绍PHP检查数组中可能缺少的数字的方法。
代码示例如下:
<?php //PHP检查数组中可能缺少的数字 function aaa($num_list){ //创建一个数组 $new_arr = range($num_list[0],max($num_list)); //使用array_diff查找缺少的元素 return array_diff($new_arr,$num_list); } echo "<pre class="brush:php;toolbar:false">"; print_r(aaa(array(1,2,3,6,7,8))); print_r(aaa(array(10,11,12,14,15,16,17)));
这里我们创建了一个aaa方法,用来计算出上述代码中两个数组分别所缺少的数字。
输出缺少的元素如下:
如图,第一个数组缺少了数字4,5;第二个数组缺少了数字13。
重要函数介绍:
range 函数表示 根据范围创建数组,包含指定的元素
语法:
range ( mixed $start , mixed $end [, number $step = 1 ] ) : array
建立一个包含指定范围单元的数组。
参数 :start表示序列的第一个值。end表示序列结束于 end 的值。step表示如果设置了步长 step,会被作为单元之间的步进值。step 应该为正值。不设置step 则默认为 1。
返回值是,返回的数组中从 start 到 end (含 start 和 end)的单元。
array_diff 函数表示计算数组的差集
语法:
array_diff ( array $array1 , array $array2 [, array $... ] ) : array
对比 array1 和其他一个或者多个数组,返回在 array1 中但是不在其他 array 里的值。
参数:array1表示要被对比的数组;array2表示和这个数组进行比较;...表示更多相比较的数组。
返回值表示返回一个数组,该数组包括了所有在 array1 中但是不在任何其它参数数组中的值。注意键名保留不变。
本篇文章就是关于PHP检查数组中可能缺少的数字的方法介绍,也是PHP面试常见考题之一,非常简单,希望对需要的朋友有所帮助!
Atas ialah kandungan terperinci PHP检查数组中缺少的数字. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!