对数组 php 的数组进行排序
Sorting array of array php
我正在做一个基于 codeigniter 的小项目,我不是 php 开发人员,这是我的问题:
foreach ($checkeds['id_iscritti'] as $checked){
$iscritto = $this->pellegrinaggio_iscritti_m->get_iscritto($checked);
$utente = $this->utenti_m->get_utente($iscritto[0]->id_utente);
echo ("utente: <pre> ");var_dump($utente);echo (" </pre> \n\n");
}
这是代码,它基本上生成了一个关联数组
这是我从 var_dump:
获得的
array(1) { [0]=>
object(stdClass)#38 (27) {
["id"]=>
string(3) "254"
["nome"]=>
string(13) "Padre EDUARDO"
["cognome"]=>
string(9) "ANATRELLA"
}
}
utente:
array(1) {
[0]=>
object(stdClass)#37 (27) {
["id"]=>
string(3) "338"
["nome"]=>
string(4) "ELSA"
["cognome"]=>
string(5) "PAONE"
}
}
如何按索引 "nome" 对数组 $utenti 进行排序?
我花了几个小时,了解这种数组是如何工作的,没有任何结果,你能帮我吗?
这是您想要的功能:
http://php.net/manual/en/function.array-multisort.php
您的代码应如下所示:
$sorted = array_multisort($utente, 'nome', SORT_ASC);
PHP 的 usort() 函数允许您使用自定义函数对数组进行排序。
假设您的对象数组存储在 $utente
中,下面将使用匿名比较函数将每个对象与其他对象进行比较。
在下面的代码中,$utente
数组将按 nome
值升序排序。
usort($utente, function($a, $b){
if ($a->nome > $b->nome) {
return 1;
}elseif($a->nome < $b->nome){
return -1;
}else{
return 0;
}
});
找到更多详细信息
我正在做一个基于 codeigniter 的小项目,我不是 php 开发人员,这是我的问题:
foreach ($checkeds['id_iscritti'] as $checked){
$iscritto = $this->pellegrinaggio_iscritti_m->get_iscritto($checked);
$utente = $this->utenti_m->get_utente($iscritto[0]->id_utente);
echo ("utente: <pre> ");var_dump($utente);echo (" </pre> \n\n");
}
这是代码,它基本上生成了一个关联数组
这是我从 var_dump:
获得的array(1) { [0]=>
object(stdClass)#38 (27) {
["id"]=>
string(3) "254"
["nome"]=>
string(13) "Padre EDUARDO"
["cognome"]=>
string(9) "ANATRELLA"
}
}
utente:
array(1) {
[0]=>
object(stdClass)#37 (27) {
["id"]=>
string(3) "338"
["nome"]=>
string(4) "ELSA"
["cognome"]=>
string(5) "PAONE"
}
}
如何按索引 "nome" 对数组 $utenti 进行排序? 我花了几个小时,了解这种数组是如何工作的,没有任何结果,你能帮我吗?
这是您想要的功能: http://php.net/manual/en/function.array-multisort.php
您的代码应如下所示:
$sorted = array_multisort($utente, 'nome', SORT_ASC);
PHP 的 usort() 函数允许您使用自定义函数对数组进行排序。
假设您的对象数组存储在 $utente
中,下面将使用匿名比较函数将每个对象与其他对象进行比较。
在下面的代码中,$utente
数组将按 nome
值升序排序。
usort($utente, function($a, $b){
if ($a->nome > $b->nome) {
return 1;
}elseif($a->nome < $b->nome){
return -1;
}else{
return 0;
}
});
找到更多详细信息