Anno 2013, sulla mia varietà di giardino comune linux vps con cpanel, con impostazioni predefinite, con php 5.2.17, file_put_contents richiede sempre ~ 5 ms per lunghezze di stringa brevi.
Accidentalmente 5 ms indica il tempo di scrittura completo di un hdd di alta qualità.
file_put_contents($filename,'abcdefghi...~100chars',FILE_APPEND);
Questo richiede circa 5 ms in modo coerente. Questo sembra includere il "blocco" e il "flushing". Così, per coloro che chiedono circa la velocità di file_put_contents, almeno 5ms/funzionamento su server comuni 2013 04.
Se avete bisogno di velocità, ad esempio, per alcuni la registrazione, @ Matteo Flaschen detto:
file_put_contents is equivalent to fopen, fwrite, fclose.
fclose should ensure the file is fully flushed to disk.
Poi si ha la necessità :
function file_put_contents_fast() {...no fclose...}
Ma ci vorrà qualche ricerca per scoprire cosa succede se gli handle di file sono lasciati aperti. Php closes them at exit, ma lo fa davvero tutto il tempo? Anche se si blocca? Cosa succede se un file viene lasciato aperto da php dopo un arresto anomalo? ecc. ecc. Dopo 30 minuti di lettura manuale e googling su php, non sono stati menzionati tali e le relative conseguenze.
"bloccare" è il termine che ti interessa. Le operazioni di blocco fanno sì che il tuo programma attenda (o "blocchi") fino a quando non sono completi. Le operazioni non bloccanti o asincrone sono quelle che vengono inviate "in background" :) – meagar