/**---数组处理---*/
一.数组查重
二.数组转字符串
三.
四.
implode ($separator, $arr); 将数组元素变成字符串
explode ($separator, $string, $limit = null);将字符串转换为数组
in_array($needle, array $haystack, $strict = false);判断某个元素是否在数组中
jion($separator = "", $arr);把数组元素组合为一个字符串
reset($arr);把数组内部指针移动到数组第一个元素,并返元素值
current($arr); 返回当前指针指向的数组元素的值,如果当前元素为空,则返回false
array_search($needle, $haystack, $strict = null);判断某个元素是否在数组中,存在返回其键名,不存在返回false
array_change_key_case($array, $case = null):更改数组键名大小写,默认改为小写 CASE_UPPER(大写) CASE_LOWER(小写)
array_chunk($array, $length, $preserve_keys = null);将数组每隔n个拆分一次
array_combine($keys, $values):将2个数组组合成一个数组,第一个作为新数组的键名,第二个作为新数组的键值
array_diff($array1, $array2, ...$_):返回在其他数组中不存在的键值(第一个有,第二个没有)
array_diff_key($array1, $array2, ...$_):返回在其他数组中不存在的键名(第一个有,第二个没有)
array_diff_assoc($array1, $array2, ...$_):返回在其他数组中键名和键值都不存在的元素(第一个有,第二个没有)只要键名或键值的其中一个不一样,就会返回。
array_sum(array $array) 数组值相加
array_product(array $array)数组值相乘
array_flip($arr)键值互换
array_key_exists($key, $array) 判断数组的键名是否存在
array_keys():返回数组中所有的键名,组成一个新的数组
array_unique($array, $flags = SORT_STRING):数组去重,删除数组中重复多余的元素
array_shift($array):删除数组第一个元素,并返回被删除的元素,如果删除失败返回null
array_pop():删除数组的最后一个元素,返回被删除的元素
array_push():向数组的最后面追加元素,返回新数组的个数
array_values():得到数组的所有键值,并返回新的数组
array_keys():得到数组的所有键名,并返回新的数组
----------------------------------------------------------------------------------------------------
/**数组查重*/
//数组查重(判断数组是重复)
if (count($arr) != count(array_unique($arr))) {
return '该数组有重复值';
}
//获取重复的数组/不重复的数组()
$unique = array_unique($arr); //去重
$repeat = array_diff_assoc($arr,$unique);//获取重复的值
//二维数组判重 $arr,$items
$unique = [];
$repeat = [];
foreach ($arr as $key => $value) {
$str = '';
foreach ($items as $key => $item) {
$str .= "{$value[$item]}"; // `.=`累积,eg: a; ab; abc;
}
}
if (!in_array($str, $unique)) {
$unique[] = $str;
} else{
$repeat[] = $value;
}
return $repeat;
----------------------------------------------------------------------------------------------------
//数组转字符串(思路:循环数组,通过判断key是否为空进行赋值)
$item = [ $names = [
'sellableStock' => 123456, 'sellableStock' => '可销售库存',
'lastThirtyDaysSale' => 123456, 'lastThirtyDaysSale' => '近30天销量',
'totalUndelivered' => 123456, 'totalUndelivered' => '未交数量',
'totalPendingAuditQuantity' => 123456, 'totalPendingAuditQuantity' => '待审核数量',
'supportDay' => 123456, 'supportDay' => '支撑天数',
]; ];
$notes = [];
foreach ($item as $key => $value) {
if (isset($names[$key])) {
$notes[] = $names[$key].':'.$value;
}
}
//
//$additionalNotes = implode(',', $notes);
////效果
//$additionalNotes = 可销售库存:123456,可销售库存:123456,可销售库存:123456,可销售库存:123456,可销售库存:123456,
----------------------------------------------------------------------------------------------------