He leído lo que he encontrado en Stackoverflow y aún no estoy seguro de esto.Ordenando una matriz de objetos SimpleXML
que tienen una gran variedad de objetos SimpleXML algo como esto:
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"
}
}
Y yo quiero ser capaz de ordenar por cualquier columna, ascendente o descendente. Algo así como:
sort($data, 'name', 'asc');
Dónde puedo pasar de la matriz por encima de los objetos y ordenar por el valor de lo que me gusta clave.
Como referencia, una solución .NET similar sería lo largo de estas líneas: la gente
XmlSortOrder order = XmlSortOrder.Ascending;
if (sortDirection == "asc") {
order = XmlSortOrder.Ascending;
}
expression.AddSort(columnSortingOn + "/text()", order,
XmlCaseOrder.UpperFirst, "en-us", XmlDataType.Text);
que he visto dicen
"Use usort"
Seguido de un ejemplo básico del manual de PHP, pero este doesn realmente lo explique Al menos no para mí. También he visto personas que sugieren usar una biblioteca externa como SimpleDOM pero quiero evitar usar algo externo para esto (aparentemente, aunque aún no lo puedo resolver).
Se agradece cualquier ayuda, gracias!
¡Diablos, Josh, eres persistente! Supongo que lo probaré, ya que me permitiría pasar al siguiente obstáculo y probablemente podría utilizarlo en otros lugares de este proyecto. – Stuart
No soy constante, solo consecuente al abogar por la reutilización del código. Si el fragmento que publiqué anteriormente funciona para ti, significa que debes usarlo. O use cierres si lo prefiere, lo que sea que funcione para usted. Como dijiste, tu objetivo es encontrar una solución que te permita pasar al siguiente obstáculo y no requerirás que mires hacia atrás más adelante. –
Ese "persistente" estaba destinado a ser gratuito. Me venden en SimpleDOM. Simplemente funciona. Rápido. Genial, Josh. – Stuart