Php 仅从数组中选择不同的值
这里,我有以下变量$countries\u all:Php 仅从数组中选择不同的值,php,mysql,loops,foreach,Php,Mysql,Loops,Foreach,这里,我有以下变量$countries\u all: Array ( [0] => stdClass Object ( [countries] => India,Afghanestan,Japan,South Africa ) [1] => stdClass Object ( [countries] => Singapore,South Africa,India,Pakista
Array (
[0] => stdClass Object
(
[countries] => India,Afghanestan,Japan,South Africa
)
[1] => stdClass Object
(
[countries] => Singapore,South Africa,India,Pakistan
)
[2] => stdClass Object
(
[countries] => Japan,Australia,India
)
)
但我需要创建仅包含唯一值的第二个数组$countries:
Array (
[0] => stdClass Object
(
[countries] => India
)
[1] => stdClass Object
(
[countries] => Afghanestan
)
[2] => stdClass Object
(
[countries] => Japan
)
[3] => stdClass Object
(
[countries] => South Africa
)
[4] => stdClass Object
(
[countries] => Singapore
)
[5] => stdClass Object
(
[countries] => Pakistan
)
[6] => stdClass Object
(
[countries] => Japan
)
[7] => stdClass Object
(
[countries] => Australia
)
)
对于按(,)拆分,我使用了以下方法
foreach ($countries_all as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $uni_countries){
echo $uni_countries;
}
}
但是如何从上面的例子中得到唯一的值
有人能帮我吗
提前谢谢
EDIT1
这里我还有一个与上述问题相关的问题
现在我得到了唯一的值
如何从数据库中获取唯一值的结果
比如说,,
我希望所有的结果(比如)都是“印度”试试这个:
$newlist = array();
foreach ($countries_list as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $uni_countries){
echo $uni_countries;
$newlist[] = $uni_countries){
}
}
array_unique($newlist);
$uniqueCountries = array();
foreach ($countries_list as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $country){
if (!in_array($country, $uniqueCountries)) {
//adding to list
$uniqueCountries[] = $country
} else {
echo $country, ' already in list', PHP_EOL;
}
}
}
$uniqueCoutries包含所有找到的coutries,没有重复项请尝试以下操作:
$uniqueCountries = array();
foreach ($countries_list as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $country){
if (!in_array($country, $uniqueCountries)) {
//adding to list
$uniqueCountries[] = $country
} else {
echo $country, ' already in list', PHP_EOL;
}
}
}
$uniqueCoutries包含所有找到的coutries,没有重复项该函数正是您要查找的函数
$countries = array();
foreach ($countries_all as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $country){
$countries[] = $country;
}
}
$countries = array_unique($countries);
这个函数就是你要找的
$countries = array();
foreach ($countries_all as $list){
$countrieslist=explode(',', $list->countries);
foreach ($countrieslist as $country){
$countries[] = $country;
}
}
$countries = array_unique($countries);
你可以试试这个
$countrieslist = array();
foreach ($countries_all as $list){
$countrieslist[] = explode(',', $list->countries);
}
$array = array_unique(array_reduce($countrieslist,'array_merge', array()));
你可以试试这个
$countrieslist = array();
foreach ($countries_all as $list){
$countrieslist[] = explode(',', $list->countries);
}
$array = array_unique(array_reduce($countrieslist,'array_merge', array()));
您从哪里获得$countries?那应该是$uni_国家吗?哈,对不起,只有$uni_国家。你从哪里得到$uni_国家?这应该是$uni_国家吗?哈,对不起,这只是$uni_国家