@myArea = sort (keys %{$camArray{$trafficArea}}); $items = scalar @myArea; #### for ($i=0; $i < $items; $i++) { print "\t## for ($j=0; $j < $items; $j++) { print "$camArray{$trafficArea}{$j}\n"; } #### %camArray = ( 'seattle' => { ' Select a Traffic Cam' => '', 'I-5 at NE 45th St' => 'cctv135', 'I-5 at Roanoke St' => 'cctv126', 'I-5 at Yesler Way' => 'cctv105', 'I-5/I-90 Interchange' => 'cctv812', 'I-5 at Holgate St' => 'cctv098', 'I-5 at Spokane St' => 'cctv093', 'I-5 at Albro Place' => 'cctv086', 'I-5 at Mid Boeing Field' => 'cctv081', 'I-90 at 18th Ave. S.' => 'cctv821', 'I-90 Midspan' => 'cctv859', 'Hwy 520 at Montlake' => 'cctv504', 'Hwy 520 Midspan' => 'cctv509', 'Hwy 99 at Michigan St' => 'cctv498', 'Hwy 99 at W Marginal Way' => 'cctv497' }, 'tacoma' => { ' Select a Traffic Cam' => '', 'Narrows Bridge - westside' => '016cc0085', 'Narrows Bridge - eastside' => '016cc0047', 'I-5 south of Tacoma' => 'TacSouth', 'I-5 north of Tacoma' => 'TacNorth', 'I-5/Hwy 16 Interchange' => '005cc1324', 'I-5 at S. 48th Street' => '005cc1312', 'Hwy 16 at Center St.' => '016cc0019', 'Hwy 16 at Pearl St.' => '016cc0037' }, );