3v4l.org

run code in 300+ PHP versions simultaneously
<?php $mypi = 3.1415926535897932384626433832795028841971; $mypi = 3.141592653589793; $pi = pi(); printf("pi: %.24f, %.24f, %.24f\n", $pi, $mypi, M_PI); $l = strlen($mypi); echo "l: $l\n"; $d = pack("d", $mypi); $l = strlen($d); echo "l: $l\n"; $un = unpack("d", $d); $d = end($un); printf("%.24g\n", $d); $pi = 3.1415926535897932384626433832795028841971; $s = preg_split("//", $pi); $c = count($s); print_r($s); echo "c: $c\n"; echo gmp_strval($pi) . "\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/9iihr
function name:  (null)
number of ops:  62
compiled vars:  !0 = $mypi, !1 = $pi, !2 = $l, !3 = $d, !4 = $un, !5 = $s, !6 = $c
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 3.14159
    3     1        ASSIGN                                                   !0, 3.14159
    4     2        INIT_FCALL                                               'pi'
          3        DO_ICALL                                         $9      
          4        ASSIGN                                                   !1, $9
    5     5        INIT_FCALL                                               'printf'
          6        SEND_VAL                                                 'pi%3A+%25.24f%2C+%25.24f%2C+%25.24f%0A'
          7        SEND_VAR                                                 !1
          8        SEND_VAR                                                 !0
          9        SEND_VAL                                                 3.14159
         10        DO_ICALL                                                 
    7    11        STRLEN                                           ~12     !0
         12        ASSIGN                                                   !2, ~12
    8    13        ROPE_INIT                                     3  ~15     'l%3A+'
         14        ROPE_ADD                                      1  ~15     ~15, !2
         15        ROPE_END                                      2  ~14     ~15, '%0A'
         16        ECHO                                                     ~14
   10    17        INIT_FCALL                                               'pack'
         18        SEND_VAL                                                 'd'
         19        SEND_VAR                                                 !0
         20        DO_ICALL                                         $17     
         21        ASSIGN                                                   !3, $17
   11    22        STRLEN                                           ~19     !3
         23        ASSIGN                                                   !2, ~19
   12    24        ROPE_INIT                                     3  ~22     'l%3A+'
         25        ROPE_ADD                                      1  ~22     ~22, !2
         26        ROPE_END                                      2  ~21     ~22, '%0A'
         27        ECHO                                                     ~21
   14    28        INIT_FCALL                                               'unpack'
         29        SEND_VAL                                                 'd'
         30        SEND_VAR                                                 !3
         31        DO_ICALL                                         $24     
         32        ASSIGN                                                   !4, $24
   15    33        INIT_FCALL                                               'end'
         34        SEND_REF                                                 !4
         35        DO_ICALL                                         $26     
         36        ASSIGN                                                   !3, $26
   16    37        INIT_FCALL                                               'printf'
         38        SEND_VAL                                                 '%25.24g%0A'
         39        SEND_VAR                                                 !3
         40        DO_ICALL                                                 
   19    41        ASSIGN                                                   !1, 3.14159
   20    42        INIT_FCALL                                               'preg_split'
         43        SEND_VAL                                                 '%2F%2F'
         44        SEND_VAR                                                 !1
         45        DO_ICALL                                         $30     
         46        ASSIGN                                                   !5, $30
   21    47        COUNT                                            ~32     !5
         48        ASSIGN                                                   !6, ~32
   22    49        INIT_FCALL                                               'print_r'
         50        SEND_VAR                                                 !5
         51        DO_ICALL                                                 
   23    52        ROPE_INIT                                     3  ~36     'c%3A+'
         53        ROPE_ADD                                      1  ~36     ~36, !6
         54        ROPE_END                                      2  ~35     ~36, '%0A'
         55        ECHO                                                     ~35
   24    56        INIT_FCALL_BY_NAME                                       'gmp_strval'
         57        SEND_VAR_EX                                              !1
         58        DO_FCALL                                      0  $38     
         59        CONCAT                                           ~39     $38, '%0A'
         60        ECHO                                                     ~39
         61      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.54 ms | 1392 KiB | 30 Q