Let's replace the example_open() function with a wrapper so that fopen("example:///path/to/file") does the same job.

 1: php_stream_wrapper_ops example_wops = {
 2:     example_opener, /* stream_opener */
 3:     NULL, /* stream_closer hook */
 4:     NULL, /* fstat hook */
 5:     NULL, /* stat hook */
 6:     NULL, /* diropen()er */,
 7:     "example wrapper"
 8: };
 9: 
10: php_stream_wrapper example_wrapper = {
11:     &example_wops, /* bind the methods to the instance */
12:     NULL,    /* no wrapper instance specific data */
13:     0,    /* not a url that requires network access */
14: };