Procesa cargas de archivos XHR2 en PHP

Mi artículo "New Tricks in XMLHttpRequest2" tiene muchos ejemplos excelentes, pero no tiene ningún código de servidor para ilustrar cómo controlar archivos. Si quieres saber cómo procesar una carga de archivos con xhr.send(FormData), este es un ejemplo rápido de una carga de imágenes en PHP.

Este servidor es trivial, pero demuestra dos cosas. La primera es enviar un archivo y una carga útil adicional al mismo tiempo. El segundo es cómo obtener el archivo (y otros datos) en PHP. Por último, la imagen se codifica en una URL data: y se incluye en una respuesta JSON que se envía al cliente.