从同一PHP文件输出图像,该文件也接收&发送JSON


Outputting an image from the same PHP file which also receives & sends JSON

好的,我希望我能解释我的情况,而不是粘贴一行又一行的代码。

目前,JSON发送位置信息到我的PHP文件,它反过来使用这个数据来生成一个图像,保存它,并通过JSON返回文件名回浏览器。Javascript然后刷新屏幕上的图像。

目前这一切都很好,但我想优化这个过程,看看在创建后直接输出图像文件的可能性,然后保存。

我的理想解决方案是这样的:

    header('Content-Type: image/gif');
    echo $this->canvas;
    // Save user file
    $this->canvas->writeImage( $this->userFile = 'user_img.gif' );          
    $this->canvas->destroy();
    // encode everything and send to browser
    echo json_encode(array('misc data back to the browser'));

(我仍然需要通过JSON将数据发送回浏览器)

在我的HTML中,图像的布局是这样的:

    <img src='json-processing-script.php' />

在您的示例中,json将被添加到gif中,使您的图像混乱。如果你想从php脚本中返回这两个完全不同的东西,你必须对图像进行编码,将其添加到json中,并在javascript中提取它以获得图像的源。