![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Mam funkcję, która w pętli generuje wezwania do zapłaty, chodzi o to by te wezwania gdzieś zapisać by móc je wydrukować.
i teraz chodzi o to, że zapis pliku nie działa. Jak przetestowałem go osobno to oczywiście chodził - natomiast w pętli nie działa. Podejrzewam, że jednak problem, może tkwić w tym, że plik $fp istnieje wirtualnie i do momentu, w którym go gdzieś nie zapiszę on "nie istnieje" - tyle, że nie wiem jak go zapisać ![]() Podpowie ktoś? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Nie copy, a file_put_contents.
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Problem w tym, że file_put_contents($file, $current); ma dwie zmienne. Jak dam jedną to błąd,
a jak jako zmienną dam pustą $current =''; to zapisuje mi puste pliki. Ten post edytował frankiejojo 30.06.2017, 18:43:34 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Problem w tym, że nie czytasz dokładnie dokumentacji.
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
$current ='';
file_put_contents($fp, $current,FILE_APPEND); Spróbowałem w ten sposób - File_Append -wg manuala powoduje dopisanie a nie nadpisanie danych. Powstałe w ten sposób pliki mają wielkość 0 - słownie zero. Więc możliwe, że ta funkcja nie przechwytuje plików po prostu tworzy w pętli pliki również możliwe jest że nie tą dokumentację szukam. Jednak nie tyle interesuje mnie funkcja file_put_contents co 'PHPowy odpowiednik funkcji save as." |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Nie ma znaczenia, czy dopisujesz czy nadpisujesz, bo tworzysz nowe pliki.
A co mówi manual na temat drugiego parametru ($current)? -------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Korzystam z http://php.net/manual/en/function.file-put-contents.php
Podane przeze mnie określenie $current jest z przykładu. W opisie funkcji jest to Data. data The data to write. Can be either a string, an array or a stream resource. If data is a stream resource, the remaining buffer of that stream will be copied to the specified file. This is similar with using stream_copy_to_stream(). You can also specify the data parameter as a single dimension array. This is equivalent to file_put_contents($filename, implode('', $array)). Czyli po naszemu Dane mogą być stringiem lub tablicą (jednowymiarową) albo strumieniem (ale nie wiem o jaką rzeczkę chodzi - String i Tablica - to znam) Napisałeś "Nie ma znaczenia czy nadpisujesz ... bo tworzysz nowe pliki" tyle, że jeżeli zapisany plik ma wielkość 0 tzn został tylko utworzony a zawartości brak Ten post edytował frankiejojo 30.06.2017, 19:28:04 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
A jak myślisz, dlaczego plik ma 0 bajtów?
-------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Tego nie wiem.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
W poście wyżej napisałeś czym jest drugi parametr funkcji oraz jaką Ty mu nadajesz wartość.
-------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie, napisałem, że $current jest dopisywany lub nadpisywany w pliku.
tj. file_put_contents($fp, $current,FILE_APPEND); - to mi dopisze do pliku, jak dam bez file append to mi nadpisze, file_put_contents($fp, $current); Czyli po naszemu jeżeli $fp =1; $current = 2; to bez file append wynikiem będzie 2 a z file append 12. tak więc jak zapisać wychwycony plik dalej nie wiem ![]() Faktycznie, napisałem, że $current jest dopisywany lub nadpisywany w pliku. tj. file_put_contents($fp, $current,FILE_APPEND); - to mi dopisze do pliku, jak dam bez file append to mi nadpisze, file_put_contents($fp, $current); Czyli po naszemu jeżeli $fp =1; $current = 2; to bez file append wynikiem będzie 2 a z file append 12. Na ten moment funkcja wg mnie działa tak, że tworzy pusty plik, do którego dopisuje pauzę czyli też nic. tak więc jak zapisać wychwycony plik dalej nie wiem ![]() |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1827 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
A w jakiej zmiennej w Twoim kodzie podanym w pierwszym poście masz zawartość zmienionego PDFa?
P.S. Czy "Save as" ma działać tak, że zapisuje zmieniony plik na serwerze pod inną nazwą, czy ma wyskakiwać okienko z możliwością zapisania na dysku? Ten post edytował trueblue 1.07.2017, 11:11:46 -------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 111 Pomógł: 2 Dołączył: 20.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki.
Faktycznie nie zrozumiałem instrukcji. brzmi ona: file_put_contents($nazwa_pliku, $zawartosc); Dzięki za cierpliwość. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 7.07.2025 - 23:26 |