En PHP, voy a escribir (crear) el archivo con file_put_contents($filename, $data);

Está bien, pero quiero detectar el acabado de eventos de proceso.

Actualmente, la página está mostrando estado de carga.

Esta es la forma en la que puedo saber que está acabado o no.

Quiero detectar con el código.

probablemente duplicado.. tal vez este enlace es útil stackoverflow.com/a/21842519/4519636

OriginalEl autor Alvin | 2011-05-22

3 Comentarios

  1. 9

    Este es un bloqueo, llamada de e/S, por lo que termina cuando la llamada a la función devuelve. El valor de retorno es el número de bytes escritos (con éxito).

    +1 respuesta clara, referencia aquí: php.net/file-put-contents
    Ok, ahora veo que ‘file_put_contents()’ devuelve el tamaño del archivo, en la meta. Además, se puede detectar el tamaño del ‘antes’ ?? He utilizado: ‘file_get_contents()’. Si es así, puedo detectar si el proceso es exitoso con la redacción de la de todos los bytes (o) no.
    Tamaño de archivo (antes o después), puede determinarse mediante una llamada filesize()
    Lea la documentación para filesize(). Se espera que la ruta de acceso a un archivo, no el contenido de un archivo. us3.php.net/filesize
    FYI para referencia en el futuro, usted puede editar su pregunta original; no hay necesidad de uno nuevo 🙂 Para el código, el uso de marcas de acento grave (`) de todo el código.

    OriginalEl autor AJ.

  2. 5

    Pone todo en suspenso hasta que se acabó

    Así que usted podría usar algo como esto para determinar cuando se ha terminado de escribir el archivo.

    echo "The file's contents are now being written, please wait.";
    file_put_contents($filename, $data);
    echo "The file's contents have been written.";

    OriginalEl autor Travis

  3. 3

    Recuperar la Content-Length encabezado desde la ubicación remota en primer lugar. Usted puede utilizar get_headers a hacer eso. Así:

    $headers = get_headers($url, 1);
    echo "To download: " . $headers['Content-Length'] . " bytes.<br />";
    Será esto siempre funciona? O es que hay casos fueron la aplicación web o el servidor se niega a dar sólo los encabezados? También hace la get_headers método de envío de la CABEZA o CONSEGUIR?
    Woooooooooooow! Sí!! Muchas gracias minitech! 😉
    No creo que el servidor puede negarse a enviar encabezados por algo. Y a partir de la página: «Si alguien tiene curiosidad, como yo, esta función no enviar una CABEZA verbo. En su lugar envía un GET. Que en mi caso no es lo ideal porque tengo una manera rápida de conseguir un estado HTTP (200, 404, etc.) El problema es que, para casos como el mío, no quiero que todos los gastos generales con los datos que viene de vuelta.»
    No, se cancela después de que obtiene los encabezados. (Por «sobrecarga», la persona que significaba «el resto de las cabeceras», creo.)
    He probado esto con una costumbre zócalo de la solución con la CABEZA, en lugar de CONSEGUIR y es justo como usted dijo, «sobrecarga» == «el resto de las cabeceras». Sólo quería saber a todo el mundo por el seguro 🙂

    OriginalEl autor Ry-

Dejar respuesta

Please enter your comment!
Please enter your name here