#php #duplicates
#php #дубликаты
Вопрос:
У меня глупый вопрос. У меня есть 2 массива :
$lang = array
(
'reglinkname_default' => 'Register',//'注册',
'yes' => 'Yes',//'是',
'no' => 'No',//'否',
'index' => 'Site Home',//'站点首页',
'setindex' => 'Home',//'首页',
'submit' => 'Submit',//'提交',
'submit_tips' => 'Press Enter to submit your changes at any time',//'按 Enter 键可随时提交您的修改',
'reset' => 'Reset',//'重置',
'ok' => 'OK',//'确定',
'cancel' => 'Cancel',//'取消',
'modify' => 'Modify',//'修改',
'start' => 'Start',//'开始',
'tips' => 'Tips',//'技巧提示',
'tips_all' => 'All tips',//'显示全部提示',
);
$lang2 = array
(
'subscribe_comsenz_email' => '填写您的邮件地址,订阅 Discuz! 官方产品动态、安全提醒、官方新闻',
'reglinkname_default' => '注册',
'yes' => '是',
'no' => '否',
'index' => '站点首页',
'setindex' => '首页',
'allthread' => '全部版块和群组',
'submit' => '提交',
'submit_tips' => '按 Enter 键可随时提交你的修改',
'reset' => '重置',
'ok' => '确定',
'cancel' => '取消',
'modify' => '修改',
'start' => '开始',
'tips' => '技巧提示',
'setseotips' => 'SEO优化设置提示',
'tips_all' => '显示全部提示',
'tips_textarea' => '双击输入框可扩大/缩小',
'name' => '名称',
'none' => '无',
'default' => '默认',
'use_default' => '- 使用默认 -',
'unknown' => '未知',
'unlimited' => '无限制',
'config' => '设置',
'admin' => '管理',
'add' => '添加',
);
Я хочу написать функцию для удаления дублированного значения и вывода нового значения. Я пытался использовать array_unique()
, но безуспешно, и я хочу напечатать значение с помощью » . Может быть, вы сможете мне помочь, большое спасибо.
Комментарии:
1. Можете ли вы включить код, в котором вы пробовали
array_unique
?
Ответ №1:
Вы можете использовать array_diff_assoc() (http://ca.php.net/manual/en/function .array-diff-assoc.php ) чтобы найти различия, затем array_subtract, чтобы удалить их.
В качестве альтернативы, если ваша цель — просто получить массив с элементами из lang1, если они существуют, и из lang2, если они не используются array_merge()
. Порядок имеет значение, поэтому вы хотели бы array_merge($lang2, $lang1);
, чтобы lang1 имел приоритет.
Комментарии:
1. Что ж, к счастью, я пытаюсь и у меня это получается. Большое вам спасибо $lang3 = array_merge($lang, $lang2); $result = array_diff($lang3, $lang2); echo «<pre>»; print_r($result);