3v4l.org

run code in 500+ PHP versions simultaneously
<?php error_reporting(-1); mb_internal_encoding('utf-8'); $text = "1А роза упала на лапу Азора"; /* $text = "Я иду с мечем судия";*/ $text = "abcdefg"; $text = str_replace(" ", "", $text); $text = mb_strtolower($text); for ($i = 0; $i < mb_strlen($text); $i++) { $symbol1 = mb_substr($text, $i, 1); echo "Symbol1: ".$symbol1."\n"; $symbol2 = mb_substr($text, -$i, 1, 'utf-8'); echo "Symbol2: ".$symbol2."\n"; if ($symbol1 <> $symbol2) { echo "Это не палиндром\n"; $fake = true; break; } } if ($fake <> true) { echo "Это палиндром\n"; }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 43
Branch analysis from position: 43
2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 17
Branch analysis from position: 48
2 jumps found. (Code = 43) Position 1 = 50, Position 2 = 51
Branch analysis from position: 50
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 51
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 39, Position 2 = 42
Branch analysis from position: 39
1 jumps found. (Code = 42) Position 1 = 48
Branch analysis from position: 48
Branch analysis from position: 42
2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 17
Branch analysis from position: 48
Branch analysis from position: 17
filename:       /in/VaKAJ
function name:  (null)
number of ops:  52
compiled vars:  !0 = $text, !1 = $i, !2 = $symbol1, !3 = $symbol2, !4 = $fake
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                                   'error_reporting'
          1        SEND_VAL                                                     -1
          2        DO_ICALL                                                     
    4     3        INIT_FCALL                                                   'mb_internal_encoding'
          4        SEND_VAL                                                     'utf-8'
          5        DO_ICALL                                                     
    6     6        ASSIGN                                                       !0, '1%D0%90+%D1%80%D0%BE%D0%B7%D0%B0+%D1%83%D0%BF%D0%B0%D0%BB%D0%B0+%D0%BD%D0%B0+%D0%BB%D0%B0%D0%BF%D1%83+%D0%90%D0%B7%D0%BE%D1%80%D0%B0'
    8     7        ASSIGN                                                       !0, 'abcdefg'
   10     8        FRAMELESS_ICALL_3                str_replace         ~9      '+', ''
          9        OP_DATA                                                      !0
         10        ASSIGN                                                       !0, ~9
   11    11        INIT_FCALL                                                   'mb_strtolower'
         12        SEND_VAR                                                     !0
         13        DO_ICALL                                             $11     
         14        ASSIGN                                                       !0, $11
   13    15        ASSIGN                                                       !1, 0
         16      > JMP                                                          ->43
   14    17    >   INIT_FCALL                                                   'mb_substr'
         18        SEND_VAR                                                     !0
         19        SEND_VAR                                                     !1
         20        SEND_VAL                                                     1
         21        DO_ICALL                                             $14     
         22        ASSIGN                                                       !2, $14
   15    23        CONCAT                                               ~16     'Symbol1%3A+', !2
         24        CONCAT                                               ~17     ~16, '%0A'
         25        ECHO                                                         ~17
   16    26        INIT_FCALL                                                   'mb_substr'
         27        SEND_VAR                                                     !0
         28        MUL                                                  ~18     !1, -1
         29        SEND_VAL                                                     ~18
         30        SEND_VAL                                                     1
         31        SEND_VAL                                                     'utf-8'
         32        DO_ICALL                                             $19     
         33        ASSIGN                                                       !3, $19
   17    34        CONCAT                                               ~21     'Symbol2%3A+', !3
         35        CONCAT                                               ~22     ~21, '%0A'
         36        ECHO                                                         ~22
   18    37        IS_NOT_EQUAL                                                 !2, !3
         38      > JMPZ                                                         ~23, ->42
   19    39    >   ECHO                                                         '%D0%AD%D1%82%D0%BE+%D0%BD%D0%B5+%D0%BF%D0%B0%D0%BB%D0%B8%D0%BD%D0%B4%D1%80%D0%BE%D0%BC%0A'
   20    40        ASSIGN                                                       !4, <true>
   21    41      > JMP                                                          ->48
   13    42    >   PRE_INC                                                      !1
         43    >   INIT_FCALL                                                   'mb_strlen'
         44        SEND_VAR                                                     !0
         45        DO_ICALL                                             $26     
         46        IS_SMALLER                                                   !1, $26
         47      > JMPNZ                                                        ~27, ->17
   25    48    >   IS_NOT_EQUAL                                                 !4, <true>
         49      > JMPZ                                                         ~28, ->51
   26    50    >   ECHO                                                         '%D0%AD%D1%82%D0%BE+%D0%BF%D0%B0%D0%BB%D0%B8%D0%BD%D0%B4%D1%80%D0%BE%D0%BC%0A'
   27    51    > > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
177.61 ms | 2066 KiB | 20 Q