Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zwracanie do pliku array_walk_recursive
piodof
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 3.01.2007
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Cześć,

Mam mały problem. Próbuje zwrócić do pliku wartość funkcji array_walk_recursive ale zwraca mi tylko cyfre 1. Przepisywałem to na 10 sposobów i już nie mam pomysłów. Może ktoś miał okazję wykorzystywać array_walk_recursive do tablicy wielowymiarowej?

To jest aktualny kod:

  1. <?php
  2. class testClass {
  3.    function callbackFunction($value, $key) {
  4.        global $data;
  5.        echo $data.$value;
  6.        $data=',';
  7.    }
  8.    function printArray($foo) {
  9.        $zrzut = array_walk_recursive($foo, array($this, 'callbackFunction'));
  10.        return $zrzut;
  11.    }
  12.    function zapis($nazwa_pliku) {
  13.    
  14.        global $tablica;
  15.        $printer = $this->printArray($tablica);
  16.    
  17.        if (is_writeable($nazwa_pliku))
  18.          {
  19.           if ($plik = fopen($nazwa_pliku, "w+"))
  20.             {
  21.              if (fwrite($plik, $printer) !== FALSE) echo "Zapis ok...<a href=".$nazwa_pliku.">".$nazwa_pliku."</a>";
  22.                else echo "Zapis błąd";
  23.        
  24.              fclose($plik);
  25.        
  26.             } else echo "Brak połączenia";
  27.        
  28.          } else echo "Plik nie istnieje lub złe prawa zapisu";
  29.    }
  30. }
  31.  
  32. $class = new testClass();
  33. $class->zapis('test.txt');
  34. ?>


Po wywołaniu klasy w przeglądarce wyświetlają się wartości tablicy a powinny zapisać się do pliku. W pliku zapisany jest tylko jeden znak - cyfra 1. Ma ktoś może pomysł jak zapisać wartości do pliku a nie wyświetlić w przeglądarce?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piodof
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 3.01.2007
Skąd: Białystok

Ostrzeżenie: (0%)
-----


Chciałem użyć tej klasy do zapisania tablicy do pliku csv. Mam plik xml, do którego znalazłem klasę, która przerabia go na tablicę. W tej tablicy mam kilka kluczy z różną ilością elementów. Właśnie na te tablice chciałem użyc array_walk_recursive.

Przykładowa tablicę wrzucam poniżej.

  1. <?php
  2. (
  3.    [nazwa1] => Array
  4.        (
  5.            [nazwa2] => Array
  6.                (
  7.                    [numery] => Array
  8.                        (
  9.                            [id] => Array
  10.                                (
  11.                                    [0] => Array
  12.                                        (
  13.                                            [#text] => 1046
  14.                                        )
  15.  
  16.                                    [1] => Array
  17.                                        (
  18.                                            [#text] => 1058
  19.                                        )
  20.  
  21.                                    [2] => Array
  22.                                        (
  23.                                            [#text] => 1033
  24.                                        )
  25.  
  26.                                )
  27.  
  28.                        )
  29.  
  30.                )
  31.  
  32.        )
  33.  
  34. )
  35. ?>


Znalazłem jakąś klasę, która przerabia xml bezpośrednio na csv ale jest komercyjna i dosyć droga. Zresztą nie wiem jak dokładnie działa. Wiem, że z super sformatowanego XMLa chcę zrobić brzydki csv ale muszę.

Zostanie mi pewnie do napisania foreach. Idę czytać manuala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 03:57