Многомерный массив. Функции обработки.

Toniq

Новичок
Многомерный массив. Функции обработки.

имеется файл массива sites.csv

1;domain.com;Domain
2;otherdomain.com;Other Domain
3;supersite.com;Super Site
4;coolsite;Cool Site

нужно отсортировать третий столбец методом natcasesort по алфавиту
ну и вывести на страницу

пишу следующий код:

PHP:
<?php

$sites = file("sites.csv");

$num = count($sites);

for($i=0; $i<$num; $i++) {

$data = explode(";", $sites[$i]);

if(strlen($data[1]) > 1) {
print("<tr><td height='15'><a href='out.php?id=$data[0]' class='desc'>$data[2]</a></td></tr>");
}

}

?>
куда не вставлю этой natcasesort не получается, мож кто-нибудь разрулит
 

Wicked

Новичок
тебе сначала нужно получить двууровневый массив целиком:
PHP:
$sites = file("sites.csv"); 
$num = count($sites); 
for($i=0; $i<$num; $i++) {
  $sites[$i] = explode(";", $sites[$i]); 
}
затем делаешь сортировку с помощью usort() и strnatcmp()
затем выводишь полученный отсортированный массив.
PHP:
for($i=0; $i<$num; $i++) { 
  if(strlen($data[1]) > 1) { 
    print("<tr><td height='15'><a href='out.php?id=$data[0]' class='desc'>$data[2]</a></td></tr>"); 
  }
}
 

Toniq

Новичок
$data // ты вроде-как упустил что этой переменной присваивать?
 

Toniq

Новичок
чёта я вот этой строчки не понимаю
PHP:
  $sites[$i] = explode(";", $sites[$i]);
-~{}~ 22.04.06 11:19:

логически скрипт должен работать по такой схеме:

открываем массив --> упорядочиваем по алфавиту по тетьему столбцу --> выдаем этот упорядоченный массив в виде HTML
 
Сверху