I write a php extension.
How can I user Zend API do that?
where can I find some doc about file_handle->handle ?

ZEND_API zend_op_array *(*org_compile_file)(zend_file_handle *file_handle,
int type TSRMLS_DC);
ZEND_API zend_op_array *sead_compile_file(zend_file_handle *file_handle,
int type TSRMLS_DC)
    php_stream *stream;
    char *data_decode;
    int data_decode_len;

    /* ... */

    /* Zend API Begin: This unsuccessful */
    php_stream *tmpstream;
    if ((tmpstream = php_stream_fopen_tmpfile()) == NULL) {
        php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to create
temporary file.  Check permissions in temporary files directory.");
        return org_compile_file(file_handle, type TSRMLS_CC);
    numbytes = php_stream_write(tmpstream, data_decode, data_decode_len);
    if (numbytes != data_decode_len) {
        php_error_docref(NULL TSRMLS_CC, E_WARNING, "Only %d of %d bytes
written, possibly out of free disk space", numbytes, data_decode_len);
        numbytes = -1;
    /* Zend API End */

    /* C Begin: This is OK */
    FILE *tmpstream;
    tmpstream = tmpfile();
    fwrite(data_decode, data_decode_len, 1, tmpstream);
    /* C End */

    file_handle->handle.fp = tmpstream;
    file_handle->type = ZEND_HANDLE_FP;
    file_handle->opened_path = expand_filepath(file_handle->filename, NULL

    return org_compile_file(file_handle, type TSRMLS_CC);

Reply via email to