3v4l.org

run code in 300+ PHP versions simultaneously
<?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } ?>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 6
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
filename:       /in/erArO
function name:  (null)
number of ops:  7
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'function_exists'
          1        SEND_VAL                                                 'GetSQLValueString'
          2        DO_ICALL                                         $0      
          3        BOOL_NOT                                         ~1      $0
          4      > JMPZ                                                     ~1, ->6
    3     5    >   DECLARE_FUNCTION                                         'getsqlvaluestring'
   30     6    > > RETURN                                                   1

Function %00getsqlvaluestring%2Fin%2FerArO%3A3%240:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 7, Position 2 = 12
Branch analysis from position: 7
1 jumps found. (Code = 42) Position 1 = 13
Branch analysis from position: 13
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 23
Branch analysis from position: 18
1 jumps found. (Code = 42) Position 1 = 27
Branch analysis from position: 27
8 jumps found. (Code = 188) Position 1 = 42, Position 2 = 51, Position 3 = 51, Position 4 = 59, Position 5 = 69, Position 6 = 78, Position 7 = 85, Position 8 = 29
Branch analysis from position: 42
2 jumps found. (Code = 43) Position 1 = 44, Position 2 = 48
Branch analysis from position: 44
1 jumps found. (Code = 42) Position 1 = 49
Branch analysis from position: 49
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 48
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 51
2 jumps found. (Code = 43) Position 1 = 53, Position 2 = 56
Branch analysis from position: 53
1 jumps found. (Code = 42) Position 1 = 57
Branch analysis from position: 57
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 56
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 51
Branch analysis from position: 59
2 jumps found. (Code = 43) Position 1 = 61, Position 2 = 66
Branch analysis from position: 61
1 jumps found. (Code = 42) Position 1 = 67
Branch analysis from position: 67
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 66
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 69
2 jumps found. (Code = 43) Position 1 = 71, Position 2 = 75
Branch analysis from position: 71
1 jumps found. (Code = 42) Position 1 = 76
Branch analysis from position: 76
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 75
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 78
2 jumps found. (Code = 43) Position 1 = 80, Position 2 = 82
Branch analysis from position: 80
1 jumps found. (Code = 42) Position 1 = 83
Branch analysis from position: 83
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 82
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 85
Branch analysis from position: 29
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 42
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 33, Position 2 = 51
Branch analysis from position: 33
2 jumps found. (Code = 44) Position 1 = 35, Position 2 = 51
Branch analysis from position: 35
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 59
Branch analysis from position: 37
2 jumps found. (Code = 44) Position 1 = 39, Position 2 = 69
Branch analysis from position: 39
2 jumps found. (Code = 44) Position 1 = 41, Position 2 = 78
Branch analysis from position: 41
1 jumps found. (Code = 42) Position 1 = 85
Branch analysis from position: 85
Branch analysis from position: 78
Branch analysis from position: 69
Branch analysis from position: 59
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 42
Branch analysis from position: 23
8 jumps found. (Code = 188) Position 1 = 42, Position 2 = 51, Position 3 = 51, Position 4 = 59, Position 5 = 69, Position 6 = 78, Position 7 = 85, Position 8 = 29
Branch analysis from position: 42
Branch analysis from position: 51
Branch analysis from position: 51
Branch analysis from position: 59
Branch analysis from position: 69
Branch analysis from position: 78
Branch analysis from position: 85
Branch analysis from position: 29
Branch analysis from position: 12
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 23
Branch analysis from position: 18
Branch analysis from position: 23
filename:       /in/erArO
function name:  GetSQLValueString
number of ops:  87
compiled vars:  !0 = $theValue, !1 = $theType, !2 = $theDefinedValue, !3 = $theNotDefinedValue
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV_INIT                                        !2      ''
          3        RECV_INIT                                        !3      ''
    5     4        INIT_FCALL_BY_NAME                                       'get_magic_quotes_gpc'
          5        DO_FCALL                                      0  $4      
          6      > JMPZ                                                     $4, ->12
          7    >   INIT_FCALL                                               'stripslashes'
          8        SEND_VAR                                                 !0
          9        DO_ICALL                                         $5      
         10        QM_ASSIGN                                        ~6      $5
         11      > JMP                                                      ->13
         12    >   QM_ASSIGN                                        ~6      !0
         13    >   ASSIGN                                                   !0, ~6
    7    14        INIT_FCALL                                               'function_exists'
         15        SEND_VAL                                                 'mysql_real_escape_string'
         16        DO_ICALL                                         $8      
         17      > JMPZ                                                     $8, ->23
         18    >   INIT_FCALL_BY_NAME                                       'mysql_real_escape_string'
         19        SEND_VAR_EX                                              !0
         20        DO_FCALL                                      0  $9      
         21        QM_ASSIGN                                        ~10     $9
         22      > JMP                                                      ->27
         23    >   INIT_FCALL_BY_NAME                                       'mysql_escape_string'
         24        SEND_VAR_EX                                              !0
         25        DO_FCALL                                      0  $11     
         26        QM_ASSIGN                                        ~10     $11
         27    >   ASSIGN                                                   !0, ~10
    9    28      > SWITCH_STRING                                            !1, [ 'text':->42, 'long':->51, 'int':->51, 'double':->59, 'date':->69, 'defined':->78, ], ->85
   10    29    >   IS_EQUAL                                                 !1, 'text'
         30      > JMPNZ                                                    ~13, ->42
   13    31    >   IS_EQUAL                                                 !1, 'long'
         32      > JMPNZ                                                    ~13, ->51
   14    33    >   IS_EQUAL                                                 !1, 'int'
         34      > JMPNZ                                                    ~13, ->51
   17    35    >   IS_EQUAL                                                 !1, 'double'
         36      > JMPNZ                                                    ~13, ->59
   20    37    >   IS_EQUAL                                                 !1, 'date'
         38      > JMPNZ                                                    ~13, ->69
   23    39    >   IS_EQUAL                                                 !1, 'defined'
         40      > JMPNZ                                                    ~13, ->78
         41    > > JMP                                                      ->85
   11    42    >   IS_NOT_EQUAL                                             !0, ''
         43      > JMPZ                                                     ~14, ->48
         44    >   CONCAT                                           ~15     '%27', !0
         45        CONCAT                                           ~16     ~15, '%27'
         46        QM_ASSIGN                                        ~17     ~16
         47      > JMP                                                      ->49
         48    >   QM_ASSIGN                                        ~17     'NULL'
         49    >   ASSIGN                                                   !0, ~17
   12    50      > JMP                                                      ->85
   15    51    >   IS_NOT_EQUAL                                             !0, ''
         52      > JMPZ                                                     ~19, ->56
         53    >   CAST                                          4  ~20     !0
         54        QM_ASSIGN                                        ~21     ~20
         55      > JMP                                                      ->57
         56    >   QM_ASSIGN                                        ~21     'NULL'
         57    >   ASSIGN                                                   !0, ~21
   16    58      > JMP                                                      ->85
   18    59    >   IS_NOT_EQUAL                                             !0, ''
         60      > JMPZ                                                     ~23, ->66
         61    >   CAST                                          5  ~24     !0
         62        CONCAT                                           ~25     '%27', ~24
         63        CONCAT                                           ~26     ~25, '%27'
         64        QM_ASSIGN                                        ~27     ~26
         65      > JMP                                                      ->67
         66    >   QM_ASSIGN                                        ~27     'NULL'
         67    >   ASSIGN                                                   !0, ~27
   19    68      > JMP                                                      ->85
   21    69    >   IS_NOT_EQUAL                                             !0, ''
         70      > JMPZ                                                     ~29, ->75
         71    >   CONCAT                                           ~30     '%27', !0
         72        CONCAT                                           ~31     ~30, '%27'
         73        QM_ASSIGN                                        ~32     ~31
         74      > JMP                                                      ->76
         75    >   QM_ASSIGN                                        ~32     'NULL'
         76    >   ASSIGN                                                   !0, ~32
   22    77      > JMP                                                      ->85
   24    78    >   IS_NOT_EQUAL                                             !0, ''
         79      > JMPZ                                                     ~34, ->82
         80    >   QM_ASSIGN                                        ~35     !2
         81      > JMP                                                      ->83
         82    >   QM_ASSIGN                                        ~35     !3
         83    >   ASSIGN                                                   !0, ~35
   25    84      > JMP                                                      ->85
   27    85    > > RETURN                                                   !0
   28    86*     > RETURN                                                   null

End of function %00getsqlvaluestring%2Fin%2FerArO%3A3%240

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
172.04 ms | 1408 KiB | 17 Q