¿Existe una manera rápida y simple de verificar si un archivo es ASCII o binario con PHP?Cómo verificar si el archivo es ASCII o binario en PHP
Respuesta
Esto solo funciona para PHP> = 5.3.0, y no es 100% confiable, pero bueno, está muy cerca.
// return mime type ala mimetype extension
$finfo = finfo_open(FILEINFO_MIME);
//check to see if the mime-type starts with 'text'
return substr(finfo_file($finfo, $filename), 0, 4) == 'text';
Respuesta perfecta. + 1 – Cosine
Enlace roto: http://php.net/manual/en/book.fileinfo.php –
probablemente debería marcar 'if (! $ Finfo) {echo" No se pudo abrir la base de datos de archivos de archivos "; salida(); } 'y no te olvides de:' finfo_close ($ finfo); '... –
Dado que ASCII es solo una codificación de texto, con representación binaria, no realmente. Podrías comprobar que todos los bytes son menores que 128, pero incluso esto no garantizaría que estuviera destinado a decodificarse como ASCII. Por lo que usted sabe, es un formato de imagen loco, o una codificación de texto completamente diferente que tampoco tiene uso de los ocho bits. Sin embargo, podría ser suficiente para su uso. Si solo desea comprobar si un archivo es válido ASCII, incluso si no es un "archivo de texto", definitivamente será suficiente.
Probablemente debe comprobar el tipo MIME del archivo, pero si usted está dispuesto a cargar el archivo en la memoria, tal vez se podría comprobar para ver si el búfer se compone de todos imprimibles caracteres utilizando algo como:
<?php
$probably_binary = (is_string($var) === true && ctype_print($var) === false);
No es perfecto, pero podría ser útil en algunos casos.
Las pestañas y los retornos de carro harán que' ctype_print() 'devuelva FALSE, desafortunadamente. – dotancohen
- 1. ¿Comprueba si un archivo es binario o ASCII con Node.js?
- 2. linux + verificar si el archivo es de texto o binario
- 3. ¿Cómo comprobar si el archivo es binario?
- 4. ¿Cómo verificar una cadena si es un ASCII o no?
- 5. ¿Cómo verificar si System.Net.WebClient.DownloadData está descargando un archivo binario?
- 6. ¿Cómo puedo verificar si un binario compilado es de 32 bits o de 64 bits?
- 7. PHP ¿cómo puedo verificar si un archivo es mp3 o archivo de imagen?
- 8. Java, Runtime.exec o ProcessBuilder: cómo saber si el archivo es shell o binario?
- 9. ¿Qué significa \ x00 en el archivo binario?
- 10. Ruby: Cómo determinar si el archivo que se lee es binario o texto
- 11. Cómo saber si un archivo binario es de lanzamiento o depuración en win y * nix
- 12. ¿Cómo convertir una cadena a ascii en binario en C#?
- 13. ¿Es posible verificar la sintaxis del archivo PHP desde PHP?
- 14. ¿Cómo verificar si el valor enum es válido?
- 15. Convertir archivo PHP a binario
- 16. En Java, ¿es posible verificar si una Cadena es solo ASCII?
- 17. ¿Cómo comprobar si un archivo .txt está en formato ASCII o UTF-8 en el entorno de Windows?
- 18. ¿Cómo verificar si un parámetro es verdadero o falso?
- 19. Compruebe si un archivo es de archivo (zip o rar) usando php
- 20. ¿Cómo simplemente verificar si la versión PHP de los servidores es 5 o superior?
- 21. ¿cómo puedo verificar si existe un archivo?
- 22. ¿Cómo puedo verificar si el archivo existe en Makefile?
- 23. ¿Es posible verificar si una notificación es visible o cancelada?
- 24. ¿Cómo verificar utilizando la funcionalidad PHP FTP si la carpeta existe en el servidor o no?
- 25. Verificar si el documento es ROOT node
- 26. Cómo verificar si existe un archivo específico en el directorio o cualquiera de sus subdirectorios
- 27. ¿Cómo leer el archivo binario en C#?
- 28. Cómo verificar si existe un archivo con el script VB
- 29. ¿Cómo extraigo datos ASCII de un archivo binario con formato desconocido en Windows?
- 30. ¿Cómo verificar programáticamente si el hotspot está habilitado o deshabilitado?
Esto se ha preguntado antes, pero siempre me pregunto, ¿por qué te importa si es ascii o binario? – Pyrolistical
Similar, pero no es un duplicado. Éste tiene una respuesta fácil y técnica, mientras que la supuesta pregunta idéntica es bastante más difícil. Hay una gran diferencia entre preguntar si un archivo está en codificación X o en cualquier codificación. –
No, volvió a leerlo, esos tipos eran solo ejemplos. Está buscando lo mismo que texto binario versus – Pyrolistical