Ho letto ciò che ho trovato su Stackoverflow e non sono ancora chiaro su questo.Ordinamento di una matrice di oggetti SimpleXML
Ho un array di oggetti SimpleXML qualcosa di simile:
array(2) {
[0]=>
object(SimpleXMLElement)#2 (2) {
["name"]=>
string(15) "Andrew"
["age"]=>
string(2) "21"
}
[1]=>
object(SimpleXMLElement)#3 (2) {
["name"]=>
string(12) "Beth"
["age"]=>
string(2) "56"
}
}
e voglio essere in grado di ordinare in qualsiasi colonna, crescente o decrescente. Qualcosa di simile:
sort($data, 'name', 'asc');
Dove si può passare nella matrice sopra degli oggetti e ordina dal valore di qualsiasi tasto mi piace.
Per riferimento, una soluzione simile .NET sarebbe in questo senso: la gente
XmlSortOrder order = XmlSortOrder.Ascending;
if (sortDirection == "asc") {
order = XmlSortOrder.Ascending;
}
expression.AddSort(columnSortingOn + "/text()", order,
XmlCaseOrder.UpperFirst, "en-us", XmlDataType.Text);
che ho visto dire
"Use usort"
Seguito da un esempio di base del manuale di PHP, ma questo doesn lo spiego davvero Al meno non a me. Ho anche visto persone suggerire l'uso di una libreria esterna come SimpleDOM ma voglio evitare di usare qualcosa di esterno per questo (apparentemente, anche se non riesco ancora a risolverlo) piccola cosa.
Qualsiasi aiuto è apprezzato, grazie!
Beh diamine Josh, sei persistente! Suppongo che farò un tentativo in quanto mi permetterebbe di passare alla prossima pietra d'inciampo e potrei probabilmente usarlo in altri punti di questo progetto. – Stuart
Non sono presistente, solo coerente nel sostenere il riutilizzo del codice. Se lo snippet che ho postato sopra funziona per te, allora per niente significa che lo usi. O usi chiusure se preferisci, qualunque cosa funzioni per te. Come hai detto, il tuo obiettivo è trovare una soluzione che ti permetta di passare al prossimo ostacolo e non ti richiederà di guardare più tardi. –
Quel "persistente" doveva essere gratuito. Sono venduto su SimpleDOM. Funziona e basta. Veloce. Grandi cose, Josh. – Stuart