Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Limit z explode?
Forum PHP.pl > Forum > Przedszkole
lenze
Witam,
prosze o naprowadzenie mnie na rozwiązanie następującego problemu:

tablica z pliku txt zawiera dane:

aaa|bbb|ccc|
aaa|bbb|ccc|
ddd|eee|fff
ggg|hhh|jjj


wyświetlam tablice poprzez
  1. <?php
  2.  
  3. $plik_tablica=&#092;"plik.txt\";}
  4. $tablica=@file($plik_tablica);
  5. foreach ( $tablica as $k => $v ){
  6. if (strpos($v, $customer_id) !== false){
  7. $t = explode('|', $v);
  8. ?>


wyswietla mi podwójne rekordy, w tym wypadku aaa|bbb|ccc, a chciałbym aby wyświetlił te które się powtarzają tylko 1 raz
pozdrawiam
crash
Przy każdej iteracji foreach dodawaj $v do tablicy (przed końcem pętli), i sprawdzaj czy aktualna wartość $v znajduje się w tej tablicy (in_array" title="Zobacz w manualu PHP" target="_manual()) jeśli nie to działasz dalej...

  1. <?php
  2. $plik_tablica = 'plik.txt';
  3. $tablica = @file($plik_tablica);
  4. $temp = array();
  5. foreach($tablica as $k => $v)
  6. {
  7.  if((strpos($v, $customer_id) !== false) and !in_array($v, $temp))
  8.  {
  9. $t = explode('|', $v);
  10.  }
  11.  $temp[] = $v;
  12. }
  13. ?>
lenze
Dzieki za podpowiedź, ale troche nie o to chodzi, w tej chwili uzyskałem 1 linie z pliku ale wg. customer_id a chodzi mi o druga pozycje w linii tekstu tj. bbb oznaczona przykladowo $t[1]
Czyli reasumując powinienem miec 1 linie z aaa|bbb|ccc
oraz wszystkie pozostale.
Wiki
Ciekawe... wg mnie nie da sie
FiDO
Nie da to sie polizac swojego łokcia bez łamania sobie ręki smile.gif

A ten problem o ile dobrze go zrozumialem, jest calkiem prosty. Wystarczy tablice uzyskana przez file" title="Zobacz w manualu PHP" target="_manual() przefiltrowac przez array_unique" title="Zobacz w manualu PHP" target="_manual() co pozwoli pozbyc sie duplikatów, nastepnie mozna juz to normalnie wyswietlic.
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.