Re: [PHP] Arrays and Alphabetical order
/* UNTESTED - and prolly could be more efficient */ $c = $d = ''; natsort($info); foreach ( $info as $i ) { $d = substr($i, 0, 1); if ( $d != $c ) echo "\n"; echo $i; $c = $d; } On Tuesday 22 July 2003 09:40 am, Don Mc Nair wrote: > Hi folks > > I am trying to print out a table of elements in alphabetical order. I have > an SQL query which sorts out the data in order and am using 'while ($info > =(mysql_fetch_row...etc)) to read the data array. I need it to echo out a > table with all the A's first, then a blank line, then all the B's, a blank > line and so on. I could write 26 different queries, one for each letter of > the alphabet, but surely there is a tidier way. > > Any help is appreciated. > > Don > > > --- > Outgoing mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.502 / Virus Database: 300 - Release Date: 18/07/2003 -- "He who fights too long against dragons becomes a dragon himself; and if you gaze too long into the abyss, the abyss will gaze into you." -Nietzche -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Arrays and Alphabetical order
<> Do a query, sorting by the field you need alphabetized. Then do this (and tidy it up as you need): echo ""; while($result = mysql_fetch_row$(query)) { if(substr($result, 0, 1) != $previousfirstletter) { $previousfirstletter = substr($result, 0, 1); echo "$previousfirstletter"; } echo "$result"; } echo ""; It's untested, but I believe it will work. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Arrays and Alphabetical order
Hello, This is a reply to an e-mail that you wrote on Tue, 22 Jul 2003 at 17:40, lines prefixed by '>' were originally written by you. > I need it to echo > out a > table with all the A's first, then a blank line, then all the B's, a > blank > line and so on. I could write 26 different queries, one for each > letter of > the alphabet, but surely there is a tidier way. How about: for($i="a";$i<="z";$i++){ echo "Items beginning with the letter $i"; $arrayposition = 0; while(strtolower(substr($data[$arrayposition],0,1))==$i){ echo $data[$arrayposition] . ""; $arrayposition++; } } -- phpmachine :: The quick and easy to use service providing you with professionally developed PHP scripts :: http://www.phpmachine.com/ Professional Web Development by David Nicholson http://www.djnicholson.com/ QuizSender.com - How well do your friends actually know you? http://www.quizsender.com/ (developed entirely in PHP) -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Arrays and Alphabetical order
Hi folks I am trying to print out a table of elements in alphabetical order. I have an SQL query which sorts out the data in order and am using 'while ($info =(mysql_fetch_row...etc)) to read the data array. I need it to echo out a table with all the A's first, then a blank line, then all the B's, a blank line and so on. I could write 26 different queries, one for each letter of the alphabet, but surely there is a tidier way. Any help is appreciated. Don --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.502 / Virus Database: 300 - Release Date: 18/07/2003 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php