Php 不重复地循环和排序结果
你能告诉我什么是转换结果而不重复的好方法吗Php 不重复地循环和排序结果,php,mysql,loops,foreach,Php,Mysql,Loops,Foreach,你能告诉我什么是转换结果而不重复的好方法吗 $numbers = array ('1', '5', '10'); foreach ($numbers as $number){ $query[] = $this->db->query("SELECT name, country FROM name WHERE id= '" . (int)$number .'"") } 结果 Array ( Array ( name = ivan country = en
$numbers = array ('1', '5', '10');
foreach ($numbers as $number){
$query[] = $this->db->query("SELECT name, country FROM name WHERE id= '" . (int)$number .'"")
}
结果
Array (
Array (
name = ivan
country = en
)
Array(
name = Peter
country = en
)
Array (
name = sisi's
country = en
)
)
如何对结果进行这样的排序
Array(
country = en
name = array (
sisi's
Peter
Ivan
)
)
您需要修改您的查询
$numbers=数组('1','5','10');
$sql=“选择不同的国家/地区,
组_CONCAT(名称)作为名称
从名字
其中id位于(“.infrade(',',$numbers)。”
按国家分组”;
$this->db->query($sql);
得到结果后,可以使用explode函数将字符串名称转换为数组 您需要修改您的查询
$numbers=数组('1','5','10');
$sql=“选择不同的国家/地区,
组_CONCAT(名称)作为名称
从名字
其中id位于(“.infrade(',',$numbers)。”
按国家分组”;
$this->db->query($sql);
得到结果后,可以使用explode函数将字符串名称转换为数组 结果似乎不对。在您的表
name
中显然有一个名为id
的列,但是当您选择所有列时,id
不会显示在结果中。你是说数据库中有重复项吗?如果数据库中有多个国家该怎么办?在php循环中重新格式化数组。@KIKO软件是的,这是一个Id,我还重新编写了代码,如果有多个国家,最好在数组中用它们的名称排序,但不知道如何做it@u_mulder你是什么意思?你能举一些例子吗?如何使用数组的例子可以在互联网上找到。结果似乎不正确。在您的表name
中显然有一个名为id
的列,但是当您选择所有列时,id
不会显示在结果中。你是说数据库中有重复项吗?如果数据库中有多个国家该怎么办?在php循环中重新格式化数组。@KIKO软件是的,这是一个Id,我还重新编写了代码,如果有多个国家,最好在数组中用它们的名称排序,但不知道如何做it@u_mulder你是什么意思?你能展示一些例子吗?如何使用阵列的例子可以在互联网上找到。你是明星,看起来很简单:)我以后会试试你是明星,看起来很简单:)我以后会试试