3v4l.org

run code in 500+ PHP versions simultaneously
<?php $filename = 'abcdefg.jpeg'; echo $filename . PHP_EOL; echo substr($filename, -3) . PHP_EOL; echo substr($filename, strrpos($filename, '.')+1) . PHP_EOL; $filename = 'abcdefg.jpg'; echo $filename . PHP_EOL; echo substr($filename, -3) . PHP_EOL; echo substr($filename, strrpos($filename, '.')+1) . PHP_EOL;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gHLlg
function name:  (null)
number of ops:  29
compiled vars:  !0 = $filename
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, 'abcdefg.jpeg'
    4     1        CONCAT                                               ~2      !0, '%0A'
          2        ECHO                                                         ~2
    5     3        FRAMELESS_ICALL_2                substr              ~3      !0, -3
          4        CONCAT                                               ~4      ~3, '%0A'
          5        ECHO                                                         ~4
    6     6        INIT_FCALL                                                   'strrpos'
          7        SEND_VAR                                                     !0
          8        SEND_VAL                                                     '.'
          9        DO_ICALL                                             $5      
         10        ADD                                                  ~6      $5, 1
         11        FRAMELESS_ICALL_2                substr              ~7      !0, ~6
         12        CONCAT                                               ~8      ~7, '%0A'
         13        ECHO                                                         ~8
    8    14        ASSIGN                                                       !0, 'abcdefg.jpg'
    9    15        CONCAT                                               ~10     !0, '%0A'
         16        ECHO                                                         ~10
   10    17        FRAMELESS_ICALL_2                substr              ~11     !0, -3
         18        CONCAT                                               ~12     ~11, '%0A'
         19        ECHO                                                         ~12
   11    20        INIT_FCALL                                                   'strrpos'
         21        SEND_VAR                                                     !0
         22        SEND_VAL                                                     '.'
         23        DO_ICALL                                             $13     
         24        ADD                                                  ~14     $13, 1
         25        FRAMELESS_ICALL_2                substr              ~15     !0, ~14
         26        CONCAT                                               ~16     ~15, '%0A'
         27        ECHO                                                         ~16
         28      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
128.44 ms | 477 KiB | 8 Q