Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z tablicą w pętli
Forum PHP.pl > Forum > PHP
mastersam
Problem jest taki że w funkcji po jej wywołaniu zmienna $poma zapętla się a później wywoływana jest w tablicy z 400 elementami. Zmienna się iplementuje, tablica się zapełnia ale widać, że po wywołaniu echo danego elementu w tablicy pokazuje że w tym elemencie nic niema. Dla tego warunek if nie realizuje się i program niedziała prawidłowo.

Proszę o pomoc.



  1. <?php
  2.  
  3. $de=0;
  4.  
  5. $plik = fopen('kropki.txt','r');
  6.  
  7. $tekst=fgets($plik, 10000);
  8.  
  9. fclose($plik);
  10.  
  11. $tab=explode("c", $tekst);
  12.  
  13. foreach($tab as $key){
  14.  
  15. $tt++;
  16.  
  17. if(!empty($key)){
  18.  
  19. $tab[$tt]=$key;
  20.  
  21. }
  22.  
  23. $z++;
  24.  
  25. }
  26.  
  27.  
  28. for($i=$z+1;$i<=400;$i++){
  29.  
  30. $tab[$i]='bab';
  31.  
  32. }
  33.  
  34.  
  35. function pokaz($a,$b){
  36.  
  37. for($poma=0;$poma<=400;$poma++){
  38.  
  39. $string=$tab[$poma];
  40.  
  41. $potab2=explode("a",$string);
  42.  
  43. $xa=$potab2[0];
  44.  
  45. $xb=$potab2[1];
  46.  
  47. echo $tab[$poma]."<br>";
  48.  
  49. if(($xa!="b")and(!empty($potab2[0]))){
  50.  
  51. if(($xa==$a)&&($xb==$b)){
  52.  
  53. return 1;
  54.  
  55. }
  56. }
  57.  
  58. }
  59. }
  60.  
  61. pokaz(5,5);
  62.  
  63.  
  64. ?>



plik kropki.txt:

cac11a11cacac10a12cac9a12c8a11c8a10c8a9c9a8c10a8c11a9c11a10
bialko0019
Link do pliku txt nie działa. Czekaj, czekaj, zmienna $tekst zawiera tekst, tylko do tablicy po explode, jak sobie wyprintujesz to tablica pusta?
Tomplus

jak chcesz wyświetlić coś w funkcji, to musisz ustawić aby tablica była globalna, a ty chciałeś aby tablica była lokalna.

Więc albo używasz global $tab; albo dodajesz atrybut do function($tab)

  1. $de=$tt=$z=0;
  2. $tekst="cac11a11cacac10a12cac9a12c8a11c8a10c8a9c9a8c10a8c11a9c11a10";
  3.  
  4. $tab=explode("c", $tekst);
  5. foreach($tab as $key){
  6. $tt++;
  7. if(!empty($key)){
  8. $tab[$tt]=$key;
  9. }
  10. $z++;
  11. }
  12.  
  13.  
  14. for($i=$z+1;$i<=400;$i++){
  15. $tab[$i]='bab';
  16. }
  17.  
  18.  
  19. function pokaz($a,$b){
  20. global $tab;
  21. for($poma=0;$poma<=400;$poma++){
  22. $string=$tab[$poma];
  23. $potab2=explode("a",$string);
  24. $xa=$potab2[0];
  25. $xb=$potab2[1];
  26. echo $tab[$poma]."<br>";
  27. if(($xa!="b")and(!empty($potab2[0]))){
  28. if(($xa==$a)&&($xb==$b)){
  29. return 1;
  30. }
  31. }
  32. }
  33. }
  34.  
  35. pokaz(5,5);
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.