3v4l.org

run code in 300+ PHP versions simultaneously
<?php function parseMotivo($motivo_text) { //$motivo_text = substr($motivo_text, 13); switch($motivo_text) { case 'Env carta extinção PERSI - dívida regularizada': case 'Env carta extinção PERSI - Dívida regularizada': case 'Env carta extinção acordo - proposta de regularização': case 'Foi enviada carta extinção PERSI - Dívida regularizada': return 'Pagamento dos montantes em mora'; case 'Env carta extinção PERSI - não entregou docs': case 'Foi enviada carta extinção PERSI - Não entregou docs': case 'Env carta extinção PERSI - não respondeu a proposta': case 'Env carta extinção PERSI - não respondeu proposta': case 'Env carta extinção PERSI - Não entregou docs': case 'Env carta extinção PERSI - não respondeu à proposta apresentada': case 'env carta extinção PERSI - Não entregou docs': case 'Env carta extinção PERSI - não entregou docs no prazo legal': case 'Env carta extinção PERSI - cliente não respondeu à proposta': case 'Env carta extinção PERSI - docs não foram entregues': case 'Env carta extinção PERSI - cliente não responde proposta apresentada': case 'Foi enviada carta extinção PERSI - não respondeu à proposta apresentada': case 'Env carta extinção PERSI - não respondeu a proposta ': case 'Foi enviada carta extinção PERSI -não respondeu à proposta apresentada': case 'Foi enviada carta extinção PERSI - não entregou docs': case 'Env carta extinção PERSI - cliente não responde a proposta de regularização': case 'Foi enviada carta extinção PERSI - não apresentou documentos': return 'Cliente bancário não colaborou com instituição de crédito'; case 'Env carta extinção PERSI - cliente não tem capacidade financeira': case 'Env carta extinção PERSI - Não tem capacidade financeira': case 'Foi enviada carta extinção PERSI - sem capacidade financeira': case 'Foi enviada carta extinção PERSI - s/ capacidade financeira': return 'Cliente bancário não possui capacidade financeira para regularizar a situação de incumprimento'; case 'Foi enviada carta de extinção PERSI (Crédito Habitação) com possibilidade de posterior análise': case 'Env carta extinção PERSI': case 'nv carta extinção PERSI': return 'Outro motivo'; case 'Env carta extinção PERSI decorridos 91 dias': return 'Decorridos mais de 90 dias desde a integração em processo de PERSI (sem acordo)'; case 'Env carta extinção PERSI - cliente não aceitou proposta': case 'Env carta extinção PERSI - cliente não aceitou proposta ': return 'Cliente bancário recusou a proposta de regularização da situação de incumprimento'; default: echo 'Not found motive: '.$motivo_text."\n"; } return "OI"; } $string = parseMotivo('Env carta extinção PERSI - dívida regularizada'); echo $string."\n"; $string = parseMotivo('Env carta extinção PERSI - cliente não aceitou proposta'); echo $string;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/cTXA6
function name:  (null)
number of ops:  12
compiled vars:  !0 = $string
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   49     0  E >   INIT_FCALL                                               'parsemotivo'
          1        SEND_VAL                                                 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+d%C3%ADvida+regularizada'
          2        DO_FCALL                                      0  $1      
          3        ASSIGN                                                   !0, $1
   50     4        CONCAT                                           ~3      !0, '%0A'
          5        ECHO                                                     ~3
   51     6        INIT_FCALL                                               'parsemotivo'
          7        SEND_VAL                                                 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+aceitou+proposta'
          8        DO_FCALL                                      0  $4      
          9        ASSIGN                                                   !0, $4
   52    10        ECHO                                                     !0
         11      > RETURN                                                   1

Function parsemotivo:
Finding entry points
Branch analysis from position: 0
32 jumps found. (Code = 188) Position 1 = 65, Position 2 = 65, Position 3 = 65, Position 4 = 65, Position 5 = 66, Position 6 = 66, Position 7 = 66, Position 8 = 66, Position 9 = 66, Position 10 = 66, Position 11 = 66, Position 12 = 66, Position 13 = 66, Position 14 = 66, Position 15 = 66, Position 16 = 66, Position 17 = 66, Position 18 = 66, Position 19 = 66, Position 20 = 66, Position 21 = 66, Position 22 = 67, Position 23 = 67, Position 24 = 67, Position 25 = 67, Position 26 = 68, Position 27 = 68, Position 28 = 68, Position 29 = 69, Position 30 = 70, Position 31 = 71, Position 32 = 2
Branch analysis from position: 65
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 65
Branch analysis from position: 65
Branch analysis from position: 65
Branch analysis from position: 66
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 67
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 67
Branch analysis from position: 67
Branch analysis from position: 67
Branch analysis from position: 68
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 68
Branch analysis from position: 68
Branch analysis from position: 69
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 70
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 71
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 2
2 jumps found. (Code = 44) Position 1 = 4, Position 2 = 65
Branch analysis from position: 4
2 jumps found. (Code = 44) Position 1 = 6, Position 2 = 65
Branch analysis from position: 6
2 jumps found. (Code = 44) Position 1 = 8, Position 2 = 65
Branch analysis from position: 8
2 jumps found. (Code = 44) Position 1 = 10, Position 2 = 65
Branch analysis from position: 10
2 jumps found. (Code = 44) Position 1 = 12, Position 2 = 66
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 14, Position 2 = 66
Branch analysis from position: 14
2 jumps found. (Code = 44) Position 1 = 16, Position 2 = 66
Branch analysis from position: 16
2 jumps found. (Code = 44) Position 1 = 18, Position 2 = 66
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 20, Position 2 = 66
Branch analysis from position: 20
2 jumps found. (Code = 44) Position 1 = 22, Position 2 = 66
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 66
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 66
Branch analysis from position: 26
2 jumps found. (Code = 44) Position 1 = 28, Position 2 = 66
Branch analysis from position: 28
2 jumps found. (Code = 44) Position 1 = 30, Position 2 = 66
Branch analysis from position: 30
2 jumps found. (Code = 44) Position 1 = 32, Position 2 = 66
Branch analysis from position: 32
2 jumps found. (Code = 44) Position 1 = 34, Position 2 = 66
Branch analysis from position: 34
2 jumps found. (Code = 44) Position 1 = 36, Position 2 = 66
Branch analysis from position: 36
2 jumps found. (Code = 44) Position 1 = 38, Position 2 = 66
Branch analysis from position: 38
2 jumps found. (Code = 44) Position 1 = 40, Position 2 = 66
Branch analysis from position: 40
2 jumps found. (Code = 44) Position 1 = 42, Position 2 = 66
Branch analysis from position: 42
2 jumps found. (Code = 44) Position 1 = 44, Position 2 = 66
Branch analysis from position: 44
2 jumps found. (Code = 44) Position 1 = 46, Position 2 = 67
Branch analysis from position: 46
2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 67
Branch analysis from position: 48
2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 67
Branch analysis from position: 50
2 jumps found. (Code = 44) Position 1 = 52, Position 2 = 67
Branch analysis from position: 52
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 68
Branch analysis from position: 54
2 jumps found. (Code = 44) Position 1 = 56, Position 2 = 68
Branch analysis from position: 56
2 jumps found. (Code = 44) Position 1 = 58, Position 2 = 68
Branch analysis from position: 58
2 jumps found. (Code = 44) Position 1 = 60, Position 2 = 69
Branch analysis from position: 60
2 jumps found. (Code = 44) Position 1 = 62, Position 2 = 70
Branch analysis from position: 62
2 jumps found. (Code = 44) Position 1 = 64, Position 2 = 70
Branch analysis from position: 64
1 jumps found. (Code = 42) Position 1 = 71
Branch analysis from position: 71
Branch analysis from position: 70
Branch analysis from position: 70
Branch analysis from position: 69
Branch analysis from position: 68
Branch analysis from position: 68
Branch analysis from position: 68
Branch analysis from position: 67
Branch analysis from position: 67
Branch analysis from position: 67
Branch analysis from position: 67
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 66
Branch analysis from position: 65
Branch analysis from position: 65
Branch analysis from position: 65
Branch analysis from position: 65
filename:       /in/cTXA6
function name:  parseMotivo
number of ops:  76
compiled vars:  !0 = $motivo_text
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   RECV                                             !0      
    5     1      > SWITCH_STRING                                            !0, [ 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+d%C3%ADvida+regularizada':->65, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+D%C3%ADvida+regularizada':->65, 'Env+carta+extin%C3%A7%C3%A3o+acordo+-+proposta+de+regulariza%C3%A7%C3%A3o':->65, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+D%C3%ADvida+regularizada':->65, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs':->66, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+a+proposta':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+proposta':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+%C3%A0+proposta+apresentada':->66, 'env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs+no+prazo+legal':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+respondeu+%C3%A0+proposta':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+docs+n%C3%A3o+foram+entregues':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+responde+proposta+apresentada':->66, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+%C3%A0+proposta+apresentada':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+a+proposta+':->66, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-n%C3%A3o+respondeu+%C3%A0+proposta+apresentada':->66, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+responde+a+proposta+de+regulariza%C3%A7%C3%A3o':->66, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+apresentou+documentos':->66, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+tem+capacidade+financeira':->67, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+tem+capacidade+financeira':->67, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+sem+capacidade+financeira':->67, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+s%2F+capacidade+financeira':->67, 'Foi+enviada+carta+de+extin%C3%A7%C3%A3o+PERSI+%28Cr%C3%A9dito+Habita%C3%A7%C3%A3o%29+com+possibilidade+de+posterior+an%C3%A1lise':->68, 'Env+carta+extin%C3%A7%C3%A3o+PERSI':->68, 'nv+carta+extin%C3%A7%C3%A3o+PERSI':->68, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+decorridos+91+dias':->69, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+aceitou+proposta':->70, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+aceitou+proposta+':->70, ], ->71
    6     2    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+d%C3%ADvida+regularizada'
          3      > JMPNZ                                                    ~1, ->65
    7     4    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+D%C3%ADvida+regularizada'
          5      > JMPNZ                                                    ~1, ->65
    8     6    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+acordo+-+proposta+de+regulariza%C3%A7%C3%A3o'
          7      > JMPNZ                                                    ~1, ->65
    9     8    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+D%C3%ADvida+regularizada'
          9      > JMPNZ                                                    ~1, ->65
   11    10    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs'
         11      > JMPNZ                                                    ~1, ->66
   12    12    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs'
         13      > JMPNZ                                                    ~1, ->66
   13    14    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+a+proposta'
         15      > JMPNZ                                                    ~1, ->66
   14    16    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+proposta'
         17      > JMPNZ                                                    ~1, ->66
   15    18    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs'
         19      > JMPNZ                                                    ~1, ->66
   16    20    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+%C3%A0+proposta+apresentada'
         21      > JMPNZ                                                    ~1, ->66
   17    22    >   IS_EQUAL                                                 !0, 'env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+entregou+docs'
         23      > JMPNZ                                                    ~1, ->66
   18    24    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs+no+prazo+legal'
         25      > JMPNZ                                                    ~1, ->66
   19    26    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+respondeu+%C3%A0+proposta'
         27      > JMPNZ                                                    ~1, ->66
   20    28    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+docs+n%C3%A3o+foram+entregues'
         29      > JMPNZ                                                    ~1, ->66
   21    30    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+responde+proposta+apresentada'
         31      > JMPNZ                                                    ~1, ->66
   22    32    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+%C3%A0+proposta+apresentada'
         33      > JMPNZ                                                    ~1, ->66
   23    34    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+respondeu+a+proposta+'
         35      > JMPNZ                                                    ~1, ->66
   24    36    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-n%C3%A3o+respondeu+%C3%A0+proposta+apresentada'
         37      > JMPNZ                                                    ~1, ->66
   25    38    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+entregou+docs'
         39      > JMPNZ                                                    ~1, ->66
   26    40    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+responde+a+proposta+de+regulariza%C3%A7%C3%A3o'
         41      > JMPNZ                                                    ~1, ->66
   27    42    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+n%C3%A3o+apresentou+documentos'
         43      > JMPNZ                                                    ~1, ->66
   29    44    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+tem+capacidade+financeira'
         45      > JMPNZ                                                    ~1, ->67
   30    46    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+N%C3%A3o+tem+capacidade+financeira'
         47      > JMPNZ                                                    ~1, ->67
   31    48    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+sem+capacidade+financeira'
         49      > JMPNZ                                                    ~1, ->67
   32    50    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+extin%C3%A7%C3%A3o+PERSI+-+s%2F+capacidade+financeira'
         51      > JMPNZ                                                    ~1, ->67
   34    52    >   IS_EQUAL                                                 !0, 'Foi+enviada+carta+de+extin%C3%A7%C3%A3o+PERSI+%28Cr%C3%A9dito+Habita%C3%A7%C3%A3o%29+com+possibilidade+de+posterior+an%C3%A1lise'
         53      > JMPNZ                                                    ~1, ->68
   35    54    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI'
         55      > JMPNZ                                                    ~1, ->68
   36    56    >   IS_EQUAL                                                 !0, 'nv+carta+extin%C3%A7%C3%A3o+PERSI'
         57      > JMPNZ                                                    ~1, ->68
   38    58    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+decorridos+91+dias'
         59      > JMPNZ                                                    ~1, ->69
   40    60    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+aceitou+proposta'
         61      > JMPNZ                                                    ~1, ->70
   41    62    >   IS_EQUAL                                                 !0, 'Env+carta+extin%C3%A7%C3%A3o+PERSI+-+cliente+n%C3%A3o+aceitou+proposta+'
         63      > JMPNZ                                                    ~1, ->70
         64    > > JMP                                                      ->71
   10    65    > > RETURN                                                   'Pagamento+dos+montantes+em+mora'
   28    66    > > RETURN                                                   'Cliente+banc%C3%A1rio+n%C3%A3o+colaborou+com+institui%C3%A7%C3%A3o+de+cr%C3%A9dito'
   33    67    > > RETURN                                                   'Cliente+banc%C3%A1rio+n%C3%A3o+possui+capacidade+financeira+para+regularizar+a+situa%C3%A7%C3%A3o+de+incumprimento'
   37    68    > > RETURN                                                   'Outro+motivo'
   39    69    > > RETURN                                                   'Decorridos+mais+de+90+dias+desde+a+integra%C3%A7%C3%A3o+em+processo+de+PERSI+%28sem+acordo%29'
   42    70    > > RETURN                                                   'Cliente+banc%C3%A1rio+recusou+a+proposta+de+regulariza%C3%A7%C3%A3o+da+situa%C3%A7%C3%A3o+de+incumprimento'
   44    71    >   CONCAT                                           ~2      'Not+found+motive%3A+', !0
         72        CONCAT                                           ~3      ~2, '%0A'
         73        ECHO                                                     ~3
   47    74      > RETURN                                                   'OI'
   48    75*     > RETURN                                                   null

End of function parsemotivo

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.71 ms | 1406 KiB | 15 Q