Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z połączeniem elementów w tablicy
Forum PHP.pl > Forum > Przedszkole
marbi
witam,
mam poniższą tablicę oczywiście to fragment:

  1. [3] => lease 10.0.102.11 {
  2.  
  3. [4] => starts 4 2011/08/11 09:11:52;
  4.  
  5. [5] => ends 4 2011/08/11 21:11:52;
  6.  
  7. [6] => hardware ethernet 00:11:25:87:69:dc;
  8.  
  9. [7] => uid 01:11:11:25:87:69:00;
  10.  
  11. [8] => client-hostname "ddd";
  12.  
  13. [9] => }
  14.  
  15. [10] => lease 10.0.102.10 {
  16.  
  17. [11] => starts 3 2011/03/16 09:00:02;
  18.  
  19. [12] => ends 3 2011/03/16 21:00:02;
  20.  
  21. [13] => hardware ethernet 00:11:25:87:cd:b0;
  22.  
  23. [14] => uid 11:00:11:25:87:cd:b0;
  24.  
  25. [15] => client-hostname "P_TP";
  26.  
  27. [16] => }
  28.  
  29. [17] => lease 10.10.65.249 {
  30.  
  31. [18] => starts 5 2011/08/26 11:58:13;
  32.  
  33. [19] => ends 6 2011/08/27 11:58:13;
  34.  
  35. [20] => hardware ethernet 00:ee:00:e0:9b:a6;
  36.  
  37. [21] => uid 01:00:1b:77:e0:9b:a6;
  38.  
  39. [22] => client-hostname "ww";
  40.  
  41. [23] => }


w jaki sposób mogę połączyć powyższe elementy tablicy w 3 elementy, czyli złączyć każdy zaczynający się od wyrazu "lease" a kończący się na klamrze "}"
dziękuję i pozdrawiam
longinus_torwaldzki
  1. $i=0;
  2. foreach ($array as $value){
  3. $new[$i][]=$value;
  4. if ($value=='}')$i++;
  5. }
  6. print_r ($new);
  7.  



teraz masz utworzone tablice w tablicy $new;
potem nie wiem co chcesz z tym zrobić - implode czy coś innego...
marbi
chyba nie dopisałem, ta tablica za każdym razem jest inna, znaczy zmienia się zawartość, jednego dnia jest kilka tysięcy elementów np dzisiaj mam prawie 3K innego jest 5K a kolejnego 1K, nigdy nie wiem ile tych nazwę to segmentów jest do połączenia i co to jest pr to jest print_r?
longinus_torwaldzki
sorki pr powinno być print_r - edytowałem poprzedni post, zobacz kometarz.
marbi
hmm jedyna różnica to jest tablica w tablicy ale ta druga też ma tak samo ustawione elementy jak podałem powyżej.

było:

  1. (


teraz jest:

  1. (
  2. [0] => Array
  3. (


pozostałe elementy się nie zmieniły, chcem otrzymać jedną tablicę w taki sposób żeby elementy zawarte pomiędzy "lease " a "}" tworzyły jeden offset czyli jeden element jakby miały być 4 wersy zapisane w jednej linii, przykład:
  1. [17] => lease 10.10.65.249 {starts 5 2011/08/26 11:58:13;ends 6 2011/08/27 11:58:13;hardware ethernet 00:ee:00:e0:9b:a6;uid01:00:1b:77:e0:9b:a6;client-hostname "ww";}
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.