Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: sortowanie z tablicy i pętla
Forum PHP.pl > Forum > PHP
glass
Mam potrójne pytanie może ktoś pomoże

używam tablicy przy sortowaniu plików z katalogu, sortuje jednak jedna nazwa się wybija na górę wiecie dlaczego?
robię tak:

Kod
$dirArray = array();
$katalog = opendir("websurfer/php/");
//pętla czyta zawartość katalogu
sort($dirArray);
echo implode("<br>",$dirArray);

wcześniej używam pętli która przy pomocy readdir pobiera nazwy plików, problem tylko z tą jedną nazwą?

Drugie pytanie o to jak wyświetlić kolejno zawartość tablicy,

Kod
$ir = "0";
while ($web[$ir] !== "")
{

echo implode("<br>",$web[$ir]);
$ir++;
}

ale się wiesza tzn. strasznie muli poza tym nie wyświetla wyników, znowu

Kod
echo implode("<br>",$web);

wyświetla

więc jak się tworzy pętlę dla tablicy i jeszcze jedno czy uda się z góry wiedzieć ile pozycji posiada tablice, to kilka pytań, a że z tablicami mam kontakt pierwszy raz dlatego proszę o radę.

ok odkryłem źródło, może inaczej jak ustawić parametr żeby wielkości liter miały drugi priorytet?
Kildyt
count służy do zliczania ilości pozycji w tablicy.

  1. <?php
  2. while ($web[$ir] !== "")
  3. ?>
Nie lepiej użyć funkcji isset, ale i tak osobiście użyłbym pętli for, ponieważ w tym przypadku wiesz gdzie jest koniec.

Może do wyświetlania zawartości katalogu użyj funkcji scandir?


Zacznij używaj poprawnych tag-ów. W jednym temacie może być poruszony jeden problem (chyba, że regulamin się zmienił).
#luq
Cytat
jednak jedna nazwa się wybija na górę wiecie dlaczego?

Nie rozumiem co za nazwa.

Cytat
Drugie pytanie o to jak wyświetlić kolejno zawartość tablicy,

  1. <?php
  2. $arr = array( 'jeden', 'dwa', 'trzy', 'cztery' );
  3.    $cntArr = count( $arr );
  4.  
  5.    for( $i = 0; $i < $cntArr; $i++ ){
  6.        echo $arr[ $i ].'<br />';
  7.    }
  8. ?>
glass
ok zastosuje count i for, będzie dobrze co do sort pliki ustawiają się w kolejności, jeden plik ma nazwę 'Rozwoj-osobisty.txt' i się wybija na samą górę, rozumiem, że to ważny temat, ale żeby do tego stopnia smile.gif))))
#luq
Dzieje się tak dlatego, że przy sort() litery duże zawsze są przed małymi, a to dlatego że w tabeli ASCII kody liter dużych są przed kodami liter małych ( A=65, a=97 )

Przy
  1. <?php
  2. $arr = array( 'C', 'c', 'a', 'b' );
  3.    sort( $arr );
  4. ?>


$arr ==
Kod
Array
(
    [0] => C
    [1] => a
    [2] => b
    [3] => c
)


Jeśli chcesz sortować w inny sposób to skorzystaj z usort()" title="Zobacz w manualu PHP" target="_manual
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.