3v4l.org

run code in 300+ PHP versions simultaneously
<?php $number1 = 0.0850; $number2 = 10.5; $french = new NumberFormatter('fr_FR', NumberFormatter::PERCENT); $chinese = new NumberFormatter('zh_CN', NumberFormatter::PERCENT); $arabic = new NumberFormatter('ar_BH', NumberFormatter::PERCENT); echo "French:\n"; echo "Format used: ", $french->getPattern(), "\n"; echo $french->format($number1), "\n"; echo $french->format($number2), "\n"; $french->setAttribute(NumberFormatter::MIN_FRACTION_DIGITS, 2); echo $french->format($number1), "\n"; echo $french->format($number2), "\n"; echo "\nChinese:\n"; echo "Format used: ", $chinese->getPattern(), "\n"; echo $chinese->format($number1), "\n"; echo $chinese->format($number2), "\n"; $chinese->setAttribute(NumberFormatter::MIN_FRACTION_DIGITS, 2); echo $chinese->format($number1), "\n"; echo $chinese->format($number2), "\n"; echo "\nArabic:\n"; echo "Format used: ", $arabic->getPattern(), "\n"; echo $arabic->format($number1), "\n"; echo $arabic->format($number2), "\n"; $french->setPattern('#,###.0 %'); $chinese->setPattern('#,###.0%'); $arabic->setPattern('#,###.0%'); echo "Format used: ", $french->getPattern(), "\n"; echo $french->format($number1), "\n"; echo $french->format($number2), "\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/UltjH
function name:  (null)
number of ops:  123
compiled vars:  !0 = $number1, !1 = $number2, !2 = $french, !3 = $chinese, !4 = $arabic
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 0.085
    4     1        ASSIGN                                                   !1, 10.5
    6     2        NEW                                              $7      'NumberFormatter'
          3        SEND_VAL_EX                                              'fr_FR'
          4        FETCH_CLASS_CONSTANT                             ~8      'NumberFormatter', 'PERCENT'
          5        SEND_VAL_EX                                              ~8
          6        DO_FCALL                                      0          
          7        ASSIGN                                                   !2, $7
    7     8        NEW                                              $11     'NumberFormatter'
          9        SEND_VAL_EX                                              'zh_CN'
         10        FETCH_CLASS_CONSTANT                             ~12     'NumberFormatter', 'PERCENT'
         11        SEND_VAL_EX                                              ~12
         12        DO_FCALL                                      0          
         13        ASSIGN                                                   !3, $11
    8    14        NEW                                              $15     'NumberFormatter'
         15        SEND_VAL_EX                                              'ar_BH'
         16        FETCH_CLASS_CONSTANT                             ~16     'NumberFormatter', 'PERCENT'
         17        SEND_VAL_EX                                              ~16
         18        DO_FCALL                                      0          
         19        ASSIGN                                                   !4, $15
   10    20        ECHO                                                     'French%3A%0A'
   11    21        ECHO                                                     'Format+used%3A+'
         22        INIT_METHOD_CALL                                         !2, 'getPattern'
         23        DO_FCALL                                      0  $19     
         24        ECHO                                                     $19
         25        ECHO                                                     '%0A'
   12    26        INIT_METHOD_CALL                                         !2, 'format'
         27        SEND_VAR_EX                                              !0
         28        DO_FCALL                                      0  $20     
         29        ECHO                                                     $20
         30        ECHO                                                     '%0A'
   13    31        INIT_METHOD_CALL                                         !2, 'format'
         32        SEND_VAR_EX                                              !1
         33        DO_FCALL                                      0  $21     
         34        ECHO                                                     $21
         35        ECHO                                                     '%0A'
   15    36        INIT_METHOD_CALL                                         !2, 'setAttribute'
         37        FETCH_CLASS_CONSTANT                             ~22     'NumberFormatter', 'MIN_FRACTION_DIGITS'
         38        SEND_VAL_EX                                              ~22
         39        SEND_VAL_EX                                              2
         40        DO_FCALL                                      0          
   17    41        INIT_METHOD_CALL                                         !2, 'format'
         42        SEND_VAR_EX                                              !0
         43        DO_FCALL                                      0  $24     
         44        ECHO                                                     $24
         45        ECHO                                                     '%0A'
   18    46        INIT_METHOD_CALL                                         !2, 'format'
         47        SEND_VAR_EX                                              !1
         48        DO_FCALL                                      0  $25     
         49        ECHO                                                     $25
         50        ECHO                                                     '%0A'
   20    51        ECHO                                                     '%0AChinese%3A%0A'
   21    52        ECHO                                                     'Format+used%3A+'
         53        INIT_METHOD_CALL                                         !3, 'getPattern'
         54        DO_FCALL                                      0  $26     
         55        ECHO                                                     $26
         56        ECHO                                                     '%0A'
   22    57        INIT_METHOD_CALL                                         !3, 'format'
         58        SEND_VAR_EX                                              !0
         59        DO_FCALL                                      0  $27     
         60        ECHO                                                     $27
         61        ECHO                                                     '%0A'
   23    62        INIT_METHOD_CALL                                         !3, 'format'
         63        SEND_VAR_EX                                              !1
         64        DO_FCALL                                      0  $28     
         65        ECHO                                                     $28
         66        ECHO                                                     '%0A'
   25    67        INIT_METHOD_CALL                                         !3, 'setAttribute'
         68        FETCH_CLASS_CONSTANT                             ~29     'NumberFormatter', 'MIN_FRACTION_DIGITS'
         69        SEND_VAL_EX                                              ~29
         70        SEND_VAL_EX                                              2
         71        DO_FCALL                                      0          
   27    72        INIT_METHOD_CALL                                         !3, 'format'
         73        SEND_VAR_EX                                              !0
         74        DO_FCALL                                      0  $31     
         75        ECHO                                                     $31
         76        ECHO                                                     '%0A'
   28    77        INIT_METHOD_CALL                                         !3, 'format'
         78        SEND_VAR_EX                                              !1
         79        DO_FCALL                                      0  $32     
         80        ECHO                                                     $32
         81        ECHO                                                     '%0A'
   30    82        ECHO                                                     '%0AArabic%3A%0A'
   31    83        ECHO                                                     'Format+used%3A+'
         84        INIT_METHOD_CALL                                         !4, 'getPattern'
         85        DO_FCALL                                      0  $33     
         86        ECHO                                                     $33
         87        ECHO                                                     '%0A'
   32    88        INIT_METHOD_CALL                                         !4, 'format'
         89        SEND_VAR_EX                                              !0
         90        DO_FCALL                                      0  $34     
         91        ECHO                                                     $34
         92        ECHO                                                     '%0A'
   33    93        INIT_METHOD_CALL                                         !4, 'format'
         94        SEND_VAR_EX                                              !1
         95        DO_FCALL                                      0  $35     
         96        ECHO                                                     $35
         97        ECHO                                                     '%0A'
   35    98        INIT_METHOD_CALL                                         !2, 'setPattern'
         99        SEND_VAL_EX                                              '%23%2C%23%23%23.0+%25'
        100        DO_FCALL                                      0          
   36   101        INIT_METHOD_CALL                                         !3, 'setPattern'
        102        SEND_VAL_EX                                              '%23%2C%23%23%23.0%25'
        103        DO_FCALL                                      0          
   37   104        INIT_METHOD_CALL                                         !4, 'setPattern'
        105        SEND_VAL_EX                                              '%23%2C%23%23%23.0%25'
        106        DO_FCALL                                      0          
   39   107        ECHO                                                     'Format+used%3A+'
        108        INIT_METHOD_CALL                                         !2, 'getPattern'
        109        DO_FCALL                                      0  $39     
        110        ECHO                                                     $39
        111        ECHO                                                     '%0A'
   40   112        INIT_METHOD_CALL                                         !2, 'format'
        113        SEND_VAR_EX                                              !0
        114        DO_FCALL                                      0  $40     
        115        ECHO                                                     $40
        116        ECHO                                                     '%0A'
   41   117        INIT_METHOD_CALL                                         !2, 'format'
        118        SEND_VAR_EX                                              !1
        119        DO_FCALL                                      0  $41     
        120        ECHO                                                     $41
        121        ECHO                                                     '%0A'
        122      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
142.8 ms | 1407 KiB | 13 Q