Article View: chile.comp.programacion
Article #2908Re: Ordenar arreglo multidimensional en PHP
From: +mArkO+
Date: Thu, 14 Jul 2005 04:35
Date: Thu, 14 Jul 2005 04:35
55 lines
2871 bytes
2871 bytes
lo ke pretendes ordenar es una matriz, no es un vector en el ke cada
posicion es una estructura de datos.
al efectuar un ordenamiento no respetara los criterios ke tu consideras en
tu aplicacion.
"Jos� Miguel Santib��ez" <jms@nospam.nivel5.cl> escribi� en el mensaje
news:Xns96933FE81D09jmsnews@200.27.221.71...
> En el cap�tulo anterior (news:db41o4$pao$2@localhost.localdomain), Chano
> <jgarrido@dcc.uchile.NOSPAM.cl> dijo:
>
> (...)
> > array_multisort( $arreglo[]["NotaRamo"] ) pero no funcion�, ya que me
> > alega que no puedo dejar los corchetes vacios y no encuentro alg�n
> > comod�n para usar.
>
> Array_multisort no sirve para eso... Cuando tienes una matriz
> multidimensional, te sirve para que cada una de las dimensiones quede
> ordenada de acuerdo a criterios b�sicos (tipo de comparaci�n, num�rica,
> alfa o normal; ascendente o descendente).
> Y no es eso lo que buscas...
>
> > Capaz que no se pueda usar esa funci�n para lo que quiero y tenga que
> > implementarla a mano :-(
>
> usort es lo que necesitas... (o uasort, considerando las entradas que
> tienes)
>
> http://cl.php.net/manual/es/function.usort.php
> http://cl.php.net/manual/es/function.uasort.php
>
> function NotaRamo($a, $b) {
> if ($a["NotaRamo"] == $b["NotaRamo"]) {
> return 0;
> }
> return ($a["NotaRamo"] < $b["NotaRamo"]) ? -1 : 1;
> }
> function CodRamoEscuela($a, $b) {
> if ($a["CodRamoEscuela"] == $b["CodRamoEscuela"]) {
> return 0;
> }
> return ($a["CodRamoEscuela"] < $b["CodRamoEscuela"]) ? -1 : 1;
> }
>
> y ordenas con: uasort($datos, 'NotaRamo'); o uasort($datos,
> 'CodRamoEscuela');
>
> eso...
>
>
> --
> Jose M. Santiba�ez A.
> <jms@nivel5.cl>
> <http://caos.cl/jms>
Technical Details
Message-ID:
<db4pqs$erd$1@news1.nivel5.cl>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mailReferences:
<db41o4$pao$2@localhost.localdomain> <Xns96933FE81D09jmsnews@200.27.221.71>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,d98161db675277b0 X-Google-Attributes: gid1593cb,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mail From: "+mArkO+" <NOSPAMjoin.xtc@gmail.comNOSPAM> Newsgroups: chile.comp.programacion Subject: Re: Ordenar arreglo multidimensional en PHP Date: Thu, 14 Jul 2005 00:35:52 -0400 Organization: Varios Lines: 57 Message-ID: <db4pqs$erd$1@news1.nivel5.cl> References: <db41o4$pao$2@localhost.localdomain> <Xns96933FE81D09jmsnews@200.27.221.71> Reply-To: "+mArkO+" <kitim@porta.com> NNTP-Posting-Host: pc-35-121-86-200.cm.vtr.net X-Trace: news1.nivel5.cl 1121315484 15213 200.86.121.35 (14 Jul 2005 04:31:24 GMT) X-Complaints-To: news@news1.nivel5.cl NNTP-Posting-Date: Thu, 14 Jul 2005 04:31:24 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1437 X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1441