Ho un file. ma ora è necessario leggere questo file in una matrice di byte. In java o C++ è molto facile farlo. ma non ho trovato come posso leggere in PHP.Lettura di un file in un array di byte (PHP)
risposta
È possibile leggere il file in una stringa come questa:
$data = file_get_contents("/tmp/some_file.txt");
si possono ottenere presso i singoli byte simile a come si farebbe in C:
for($i = 0; $i < strlen($data); ++$i) {
$char = $data[$i];
echo "Byte $i: $char\n";
}
Riferimenti:
È possibile leggere il file sia con fread()
o file_get_contents()
, poi divisi con str_split()
:
$MyArray = str_split($file);
Vedi le PHP Manual on String access and modification by character
caratteri all'interno della stringa s può essere letta e modificata da specificando l'offset a base zero del carattere desiderato dopo la stringa usando le parentesi quadre, come in
$str[42]
. Pensa a una stringa come a una matrice di caratteri per questo scopo. Le funzionisubstr()
esubstr_replace()
possono essere utilizzate quando si desidera estrarre o sostituire più di 1 carattere.
Oppure, se dopo aver chiesto e leggere byte dal file, è possibile utilizzare un SplFileObject
$file = new SplFileObject('file.txt');
while (false !== ($char = $file->fgetc())) {
echo "$char\n";
}
Questo non è un array di byte, però, ma l'iterazione di un handle di file. SplFileInfo implementa l'interfaccia SeekableIterator.
E su un sidenote, c'è anche
- file - Restituisce il file in un array. Ogni elemento dell'array corrisponde a una linea nel file, con il newline ancora collegato. In caso di fallimento, file() restituisce FALSE.
troppo php>
$data = file_get_contents("/tmp/some_file.txt");
modo migliore di fare per (non consigliato a conteggio uso, sizeof, strlen o altre funzioni): $counter = strlen($data); for($i = 0; $i < $counter; ++$i) { $char = data[$i]; echo "Byte $i: $char\n"; }
- 1. Lettura di un array di byte C# in Java
- 2. PHP file di letto come un array di byte
- 3. Lettura di un file Excel in PHP
- 4. Lettura di byte di dimensioni "integer" da un array char *.
- 5. Lettura da un array PHP in JQuery
- 6. la lettura da un file da array associativo in php
- 7. Lettura nomi file in un array
- 8. Lettura della riga specifica di un file in PHP
- 9. Stringa su array di byte in php
- 10. Stringa di byte/array binari in PHP
- 11. Come convertire un array di byte in un array int?
- 12. Lettura di blocchi da un file a un array associativo
- 13. Lettura del file di testo locale in un array JavaScript
- 14. Convertire un array di byte a una classe che contiene un array di byte in C#
- 15. Lettura di un byte in una determinata posizione di un file in C++
- 16. Converti array di byte in file wav
- 17. Java: come "tagliare" un array di byte?
- 18. Dimensioni di un array di byte golang
- 19. Solo lettura "N" byte da un file in Cocoa
- 20. Compressione GZIP su un array di byte
- 21. Lettura di un file zip all'interno di un file jar
- 22. Creazione di un file dall'array di byte
- 23. Copia array di byte in un altro array di byte in C#
- 24. Scrittura e lettura di array di byte grezzi in Spark - utilizzando Sequence File SequenceFile
- 25. La lettura di un file riga per riga in elementi di un array in Python
- 26. File scaricare un array di byte come un file in JavaScript/ExtJS
- 27. Rimozione dei primi 16 byte da un array di byte
- 28. lettura di un file .config
- 29. Java/Android: lettura/scrittura di un array di byte su una presa
- 30. array di byte in pdf
Penso che ci sia un errore di battitura. Deve essere: '$ char = $ data [$ i];' –