首页 / PHP / 将多个数组合并为具有唯一值php的数组
将多个数组合并为具有唯一值php的数组
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了将多个数组合并为具有唯一值php的数组,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1439字,纯文字阅读大概需要3分钟。
内容图文
![将多个数组合并为具有唯一值php的数组](/upload/InfoBanner/zyjiaocheng/741/fc37b39693684721b2d6c05b24d46548.jpg)
我知道Stack Overflow上有很多类似的线程,但在我的情况下它们都不起作用.
我的目标是从数据库中获取独特的节目类型.它们在show_genres列中以逗号分隔(1,2,3或更多)存储.
$link = mysqli_connect('127.0.0.1', 'root', 'pw', 'db');
$query = "SELECT show_genres FROM tv_shows";
$result = mysqli_query($link, $query);
foreach ($result as $value) {
$sh_genres = $value['show_genres'];
$sh_genres_array = array_map('trim', explode(',',$sh_genres));
// $doesnt_work = call_user_func_array("array_merge",
$sh_genres_array); // doesn't work for me
echo '<pre>' . var_export($sh_genres_array, true) . '</pre>';
}
我的结果如下:
array (
0 => 'Drama',
1 => 'Action',
2 => 'Crime',
)
array (
0 => 'Drama',
1 => 'Crime',
)
array (
0 => 'Drama',
1 => 'Thriller',
)
array (
0 => 'DIY',
)
array (
0 => 'Drama',
1 => 'Mystery',
2 => 'Supernatural',
)
但是,我只需要一个包含唯一值的数组,例如:
array (
0 => 'Drama',
1 => 'Mystery',
2 => 'Supernatural',
4 => 'Thriller',
5 => 'DIY',
6 => 'Crime',
7 => 'etc...'
)
如果我尝试在foreach循环之前创建一些数组然后将数据存储到其中,这种方法也不会给出结果.
也许,通过SQL的方法有一个更简单的解决方案!?!?
解决方法:
请试试这段代码
在SQL中
$query =“SELECT show_genres FROM tv_shows GROUP BY show_genres”;
在PHP中
$newArray = array();
foreach ($result as $value) {
$sh_genres = $value['show_genres'];
$sh_genres_array = array_map('trim', explode(',',$sh_genres));
$newArray = array_merge($newArray , $sh_genres_array );
}
$newUniqueArray = array_unique($newArray);
内容总结
以上是互联网集市为您收集整理的将多个数组合并为具有唯一值php的数组全部内容,希望文章能够帮你解决将多个数组合并为具有唯一值php的数组所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。