示例的两种写法,哪种更优雅嘞,或者大佬们有更好的写法- -
首先有一个非常大的关联数组
$replace_data = array(
1 => 11,
3 => 33,
// 后面还有很多
);
过滤并替换下面这个二维数组
$input = array(
array(1, 0),
array(1, 2),
array(2, 0),
array(3, 1),
array(3, 4),
);
对于每一个子数组按以下规则过滤
$output = array(
array('11', '0'),
array('33', '11'),
);
$output = array();
foreach ($input as $v) {
if (empty($replace_data[$v[0]])) {
continue;
}
if (($v[1] !== 0) && empty($replace_data[$v[1]])) {
continue;
}
$v[0] = $replace_data[$v[0]];
if ($v[1] !== 0) {
$v[1] = $replace_data[$v[1]];
}
$output[] = $v;
}
$output = array();
foreach ($input as $v) {
if (empty($replace_data[$v[0]])) {
continue;
}
if (($v[1] !== 0) && empty($replace_data[$v[1]])) {
continue;
}
$v[0] = $replace_data[$v[0]];
if ($v[1] !== 0) {
$v[1] = $replace_data[$v[1]];
}
$output[] = $v;
}
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.