parsekit_compile_string
    (no version information, might be only in CVS)
parsekit_compile_string -- Compile a string of PHP code and return the resulting op array
Description
array 
parsekit_compile_string ( string phpcode [, array &errors [, int options]] )
| Warning | 
| This function is
EXPERIMENTAL. The behaviour of this function, the
name of this function, and anything else documented about this
function may change without notice in a future release of PHP. 
Use this function at your own risk. | 
Parameters
   
- phpcode
- 
       A string containing phpcode. Similar to the argument to eval().
       
- errors
- 
       A 2D hash of errors (including fatal errors) encountered during compilation.
       Returned by reference.
       
- options
- 
       One of either PARSEKIT_QUIET or 
       PARSEKIT_SIMPLE. To produce varying
       degrees of verbosity in the returned output.
       
Return Values
   Returns a complex multi-layer array structure as detailed below.
  
Examples
   
| Example 1. parsekit_compile_string() example | 
<?php$ops = parsekit_compile_string('
 echo "Foo\n";
 ', $errors, PARSEKIT_QUIET);
 
 var_dump($ops);
 ?>
 | 
 The above example will output: | array(20) {
  ["type"]=>
  int(4)
  ["type_name"]=>
  string(14) "ZEND_EVAL_CODE"
  ["fn_flags"]=>
  int(0)
  ["num_args"]=>
  int(0)
  ["required_num_args"]=>
  int(0)
  ["pass_rest_by_reference"]=>
  bool(false)
  ["uses_this"]=>
  bool(false)
  ["line_start"]=>
  int(0)
  ["line_end"]=>
  int(0)
  ["return_reference"]=>
  bool(false)
  ["refcount"]=>
  int(1)
  ["last"]=>
  int(3)
  ["size"]=>
  int(3)
  ["T"]=>
  int(0)
  ["last_brk_cont"]=>
  int(0)
  ["current_brk_cont"]=>
  int(-1)
  ["backpatch_count"]=>
  int(0)
  ["done_pass_two"]=>
  bool(true)
  ["filename"]=>
  string(17) "Parsekit Compiler"
  ["opcodes"]=>
  array(3) {
    [8594800]=>
    array(5) {
      ["opcode"]=>
      int(40)
      ["opcode_name"]=>
      string(9) "ZEND_ECHO"
      ["flags"]=>
      int(768)
      ["op1"]=>
      array(3) {
        ["type"]=>
        int(1)
        ["type_name"]=>
        string(8) "IS_CONST"
        ["constant"]=>
        &string(4) "Foo
"
      }
      ["lineno"]=>
      int(2)
    }
    ["859484C"]=>
    array(6) {
      ["opcode"]=>
      int(62)
      ["opcode_name"]=>
      string(11) "ZEND_RETURN"
      ["flags"]=>
      int(16777984)
      ["op1"]=>
      array(3) {
        ["type"]=>
        int(1)
        ["type_name"]=>
        string(8) "IS_CONST"
        ["constant"]=>
        &NULL
      }
      ["extended_value"]=>
      int(0)
      ["lineno"]=>
      int(3)
    }
    [8594898]=>
    array(4) {
      ["opcode"]=>
      int(149)
      ["opcode_name"]=>
      string(21) "ZEND_HANDLE_EXCEPTION"
      ["flags"]=>
      int(0)
      ["lineno"]=>
      int(3)
    }
  }
} | 
 |