Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Ilosc lini w pliku
Forum PHP.pl > Forum > Przedszkole
Nightwalker
Witam,
Czy jest może jakieś polecenie aby sprawdzić ilość lini w danym pliku?

Ponieważ pisze skrypt oparty o plik tekstowy:

  1. <?php
  2. $plik = 'database.php';
  3. $read = file($plik);
  4.  
  5. $warunek = 1;
  6. while($warunek<5)
  7. {
  8. $wynik = explode("|", $read[$warunek++]);
  9. echo 'Data utworzenia linku: ' . $wynik[1] . '<br />';
  10. echo 'Adres IP: ' . $wynik[2] . '<br />';
  11. echo 'Adres strony docelowej: ' . '<a href="' . $wynik[3] . '">' . $wynik[3] . '</a>' . '<br />';
  12. echo 'Alias: ' . '<a href="' . $adres . $wynik[4] . '">' . $adres . $wynik[4] . '</a>' . '<br />';
  13. echo '<br /><br />';
  14. }
  15. ?>


Plik database.php wygląda tak:

  1. <?php
  2. $tuwwceozbsuosli = '|Apr.18.2006-18:23|192.168.9.78|http://smallville.pl|przek52af8|';
  3. $eneotoxvfqqmo = '|Apr.18.2006-18:46|192.168.9.78|http://sajdo.pl|dqo46185|';
  4. $ankjprlukgfyez = '|Apr.18.2006-18:46|192.168.9.78|http://majkass.com|dssdb987|';
  5. ?>


Jednak jego zawartosc stale sie zwieksza i nie wiem jaki warunek do petli wstawic...
dr_bonzo
Co robi file() ? zwraca wszystkie linie pliku w tablicy -- kazdy element to jedna linia. Teraz potrzeba policzyc ilosc tych elementow --> manual dzial o tablicach (arrays) i znajdz sobie odpowiednia funkcje.
Nightwalker
Poradziłem sobie w taki sposób:

  1. <?php
  2. for ($i=1;; $i++)
  3. {
  4. if($read[$i] == TRUE)
  5. {
  6. $wynik = explode("|", $read[$i]);
  7. echo 'Data utworzenia linku: ' . $wynik[1] . '<br />';
  8. echo 'Adres IP: ' . $wynik[2] . '<br />';
  9. echo 'Adres strony docelowej: ' . '<a href="' . $wynik[3] . '">' . $wynik[3] . '</a>' . '<br />';
  10. echo 'Alias: ' . '<a href="' . $adres . $wynik[4] . '">' . $adres . $wynik[4] . '</a>' . '<br />';
  11. echo '<br /><br />';
  12. }
  13. else
  14. {
  15. break;
  16. }
  17. }
  18. ?>


smile.gif

//EDIT
Mam jeszcze jedno pytanie, dany string z database.php wyciągam poprzez file() jak moge usunąć dany wpis z tego pliku?
Spike
Do twojego problemu z tematu polecam fubkcje: foreach" title="Zobacz w manualu php" target="_manual

  1. <?php
  2.  
  3. foreach ($read as $key => $val) {
  4.  
  5.         $wynik = explode("|", $val);
  6.         echo 'Data utworzenia linku: ' . $wynik[1] . '<br />';
  7.         echo 'Adres IP: ' . $wynik[2] . '<br />';
  8.         echo 'Adres strony docelowej: ' . '<a href="' . $wynik[3] . '">' . $wynik[3] . '</a>' . '<br />';
  9.         echo 'Alias: ' . '<a href="' . $adres . $wynik[4] . '">' . $adres . $wynik[4] . '</a>' . '<br />';
  10.         echo '<br /><br />';
  11.  
  12. } 
  13.  
  14. ?>



jeśli chodzi o usówanie to polecam array_slice" title="Zobacz w manualu php" target="_manual lub unset" title="Zobacz w manualu php" target="_manual i zapis metodą np linia po lini.
Nightwalker
Dzięki za wskazówki, ale najprawdopobniej przejde na mysqla, bo widze że z tym więcej zachodu... smile.gif
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.