Próbuję wstawić wartości tablicy do pliku przy użyciu foreach .. i jeśli rozmiar pliku wzrosła do 1 MB (1000000 bajtów). skrypt utworzyć nowy plik i umieścić wartości wewnątrz ...filesize() return 0?
jest to kod, co użyłem:
foreach($array as $code){
if(filesize($file_name) < '1000000'){
$update_file = file_get_contents($file_name);
file_put_contents($file_name,$update_file.$code);
}else{
$open = fopen($file_name.rand('99999'),'w');
file_put_contents($file_name,$code);
}
echo filesize($file_name);
}
teraz problem jest funkcja „rozmiar pliku()” zawsze zwraca 0 ,, ale jeśli usunę kod powyżej i wstawię echo filesize($file_name);
tylko na stronie .. zwróci on właściwą wartość (rozmiar pliku), skrypt sprawi, że tylko 1 plik będzie miał nawet więcej niż 1MB, ponieważ rozmiar pliku wynosi 0 jako filesize() funkcja return!
Sprawdziłem to pytanie PHP Problem : filesize() return 0 with file containing few data? ale nadal nie działa nawet śledzę Odpowiedź # 1
życzę, aby zrozumieć mój problem .. i im przepraszam za mój angielski.
spróbuj zamknąć i ponownie otworzyć plik, a następnie napisz w nim. Myślę, że to z powodu bufora. –
gdzie jest ustawione '$ nazwa_pliku'? –
@ Moein7tl próbowałem, ale nie działał – Programmer4me