• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

有两个数组,长度相同,去重后,怎么还能保持一致

php 搞代码 3年前 (2022-01-26) 45次浏览 已收录 0个评论

有两个数组,长度相同,去重后,如何还能保持一致。
比如
$t1=Array ( [0] => 南昌 [1] => 南昌 [2] => 赣州 [3] => 九江 [4] =>赣州 [5] => 九江)
$t2=Array ( [0] => 2013-09-23 17:48:33 [1] => 2013-09-23 12:48:42 [2] => 2013-09-21 17:48:23 [3] => 2013-09-12 08:40:03 [4] => 2013-09-23 10:28:22 [5] => 2013-09-27 11:28:13 )

现在$t1和$t2 都是相同长度。而且他们还存在一个对应关系。那就是t1[0]和t2[0]。。t1[1]和t2[1]…..t1[i]和t2[i]是相关联的,

我现在想实现不重复t1里面的value不重复。然后在和t2对应,如果有重复的,就保留t2里面时间最小的那个。
并且新的数组t22里面的的value是从小到大的顺来&源gao@dai!ma.com搞$代^码%网搞gaodaima代码序。
得到的结果我想是,
$t11=Array ( [0] => 九江 [1] => 赣州 [2] => 南昌 )
$t22=Array ( [0] => 2013-09-12 08:40:03 [1] => 2013-09-21 17:48:23 [2] => 2013-09-23 12:48:42 )

或者把t1,t2合并成一个二维数组更方便实现也可以,感谢。

——解决方案——————–

$t1 = Array ( 0 => '南昌', 1 => '南昌', 2 => '赣州', 3 => '九江', 4 => '赣州', 5 => '九江'); <br />$t2 = Array ( 0 => '2013-09-23 17:48:33', 1 => '2013-09-23 12:48:42', 2 => '2013-09-21 17:48:23', 3 => '2013-09-12 08:40:03', 4 => '2013-09-23 10:28:22', 5 => '2013-09-27 11:28:13' );<br /><br />foreach(array_map(null, $t1, $t2) as $r) {<br />  if(! isset($t[$r[0]])) $t[$r[0]] = $r[1];<br />  else $t[$r[0]] = min($t[$r[0]], $r[1]);<br />}<br />asort($t);<br />$t11 = array_keys($t);<br />$t22 = array_values($t);<br />print_r($t11);<br />print_r($t22);

Array
(
[0] => 九江
[1] => 赣州
[2] => 南昌
)
Array
(
[0] => 2013-09-12 08:40:03
[1] => 2013-09-21 17:48:23
[2] => 2013-09-23 12:48:42
)


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:有两个数组,长度相同,去重后,怎么还能保持一致
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址