3v4l.org

run code in 300+ PHP versions simultaneously
<?php $db = new SQLite3(':memory:'); $db->enableExceptions(true); $stmt = $db->prepare('SELECT :a, :b, ?;'); $a = 42; $stmt->bindParam(':a', $a, SQLITE3_INTEGER); $stmt->bindValue(':b', 'php'); $stmt->bindValue(':b', 'PHP'); $stmt->bindValue(3, 424242); echo "Execute statement\n"; var_dump($res = $stmt->execute()); echo "Statement result\n"; var_dump($res->fetchArray(SQLITE3_NUM)); //$stmt->reset(); echo "Change binded values\n"; $stmt->bindValue(':a', 'TEST'); $stmt->bindValue(':b', '!!!'); $stmt->bindValue(3, 40, SQLITE3_INTEGER); echo "Execute statement\n"; var_dump($res = $stmt->execute()); echo "Statement result\n"; var_dump($res->fetchArray(SQLITE3_NUM));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/R4CbZ
function name:  (null)
number of ops:  72
compiled vars:  !0 = $db, !1 = $stmt, !2 = $a, !3 = $res
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   NEW                                              $4      'SQLite3'
          1        SEND_VAL_EX                                              '%3Amemory%3A'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !0, $4
    4     4        INIT_METHOD_CALL                                         !0, 'enableExceptions'
          5        SEND_VAL_EX                                              <true>
          6        DO_FCALL                                      0          
    6     7        INIT_METHOD_CALL                                         !0, 'prepare'
          8        SEND_VAL_EX                                              'SELECT+%3Aa%2C+%3Ab%2C+%3F%3B'
          9        DO_FCALL                                      0  $8      
         10        ASSIGN                                                   !1, $8
    8    11        ASSIGN                                                   !2, 42
    9    12        INIT_METHOD_CALL                                         !1, 'bindParam'
         13        SEND_VAL_EX                                              '%3Aa'
         14        SEND_VAR_EX                                              !2
         15        SEND_VAL_EX                                              1
         16        DO_FCALL                                      0          
   10    17        INIT_METHOD_CALL                                         !1, 'bindValue'
         18        SEND_VAL_EX                                              '%3Ab'
         19        SEND_VAL_EX                                              'php'
         20        DO_FCALL                                      0          
   11    21        INIT_METHOD_CALL                                         !1, 'bindValue'
         22        SEND_VAL_EX                                              '%3Ab'
         23        SEND_VAL_EX                                              'PHP'
         24        DO_FCALL                                      0          
   12    25        INIT_METHOD_CALL                                         !1, 'bindValue'
         26        SEND_VAL_EX                                              3
         27        SEND_VAL_EX                                              424242
         28        DO_FCALL                                      0          
   14    29        ECHO                                                     'Execute+statement%0A'
   15    30        INIT_FCALL                                               'var_dump'
         31        INIT_METHOD_CALL                                         !1, 'execute'
         32        DO_FCALL                                      0  $15     
         33        ASSIGN                                           ~16     !3, $15
         34        SEND_VAL                                                 ~16
         35        DO_ICALL                                                 
   17    36        ECHO                                                     'Statement+result%0A'
   18    37        INIT_FCALL                                               'var_dump'
         38        INIT_METHOD_CALL                                         !3, 'fetchArray'
         39        SEND_VAL_EX                                              2
         40        DO_FCALL                                      0  $18     
         41        SEND_VAR                                                 $18
         42        DO_ICALL                                                 
   21    43        ECHO                                                     'Change+binded+values%0A'
   22    44        INIT_METHOD_CALL                                         !1, 'bindValue'
         45        SEND_VAL_EX                                              '%3Aa'
         46        SEND_VAL_EX                                              'TEST'
         47        DO_FCALL                                      0          
   23    48        INIT_METHOD_CALL                                         !1, 'bindValue'
         49        SEND_VAL_EX                                              '%3Ab'
         50        SEND_VAL_EX                                              '%21%21%21'
         51        DO_FCALL                                      0          
   24    52        INIT_METHOD_CALL                                         !1, 'bindValue'
         53        SEND_VAL_EX                                              3
         54        SEND_VAL_EX                                              40
         55        SEND_VAL_EX                                              1
         56        DO_FCALL                                      0          
   26    57        ECHO                                                     'Execute+statement%0A'
   27    58        INIT_FCALL                                               'var_dump'
         59        INIT_METHOD_CALL                                         !1, 'execute'
         60        DO_FCALL                                      0  $23     
         61        ASSIGN                                           ~24     !3, $23
         62        SEND_VAL                                                 ~24
         63        DO_ICALL                                                 
   29    64        ECHO                                                     'Statement+result%0A'
   30    65        INIT_FCALL                                               'var_dump'
         66        INIT_METHOD_CALL                                         !3, 'fetchArray'
         67        SEND_VAL_EX                                              2
         68        DO_FCALL                                      0  $26     
         69        SEND_VAR                                                 $26
         70        DO_ICALL                                                 
         71      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
188.86 ms | 1400 KiB | 15 Q