3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Dado un array de n posiciones // Evaluar // - Que tenga 9 posiciones // - Los valores sean enteros y de un solo digito // - No haya valores repetidos // - Que esten comprendidos en un rango del 1 al 9 // - Mostrar distintos casos de prueba $numeros = array(2,3,1123,5,6,7,"1",8.18,9); $numeroGuardado=""; $valido = false; if (count ($numeros) == 9) { foreach ($numeros as $numero) { if ((is_int($numero)) && (strlen($numero)==1)) { if ($numero == $numeroGuardado) { echo "Hay numeros repetidos en el array"; } else { if ($numero<1 || $numero>9) { echo "El numero contiene numeros que no estan entre el 1 y el 9"; } else { $valido = true; } } } else { $valido = false; echo "El nùmero no es entero o tiene màs de un dìgito"; } $numeroGuardado = $numero; } if ($valido == true) { echo "Array Correcto"; } } else { echo "El array no posee 9 digitos"; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 36
Branch analysis from position: 6
2 jumps found. (Code = 77) Position 1 = 7, Position 2 = 31
Branch analysis from position: 7
2 jumps found. (Code = 78) Position 1 = 8, Position 2 = 31
Branch analysis from position: 8
2 jumps found. (Code = 46) Position 1 = 10, Position 2 = 13
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 14, Position 2 = 27
Branch analysis from position: 14
2 jumps found. (Code = 43) Position 1 = 16, Position 2 = 18
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 26
Branch analysis from position: 26
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
1 jumps found. (Code = 42) Position 1 = 7
Branch analysis from position: 7
Branch analysis from position: 18
2 jumps found. (Code = 47) Position 1 = 20, Position 2 = 22
Branch analysis from position: 20
2 jumps found. (Code = 43) Position 1 = 23, Position 2 = 25
Branch analysis from position: 23
1 jumps found. (Code = 42) Position 1 = 26
Branch analysis from position: 26
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 22
Branch analysis from position: 27
1 jumps found. (Code = 42) Position 1 = 7
Branch analysis from position: 7
Branch analysis from position: 13
Branch analysis from position: 31
2 jumps found. (Code = 43) Position 1 = 34, Position 2 = 35
Branch analysis from position: 34
1 jumps found. (Code = 42) Position 1 = 37
Branch analysis from position: 37
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 35
Branch analysis from position: 31
Branch analysis from position: 36
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/74n2h
function name:  (null)
number of ops:  38
compiled vars:  !0 = $numeros, !1 = $numeroGuardado, !2 = $valido, !3 = $numero
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   ASSIGN                                                   !0, <array>
   12     1        ASSIGN                                                   !1, ''
   13     2        ASSIGN                                                   !2, <false>
   14     3        COUNT                                            ~7      !0
          4        IS_EQUAL                                                 ~7, 9
          5      > JMPZ                                                     ~8, ->36
   16     6    > > FE_RESET_R                                       $9      !0, ->31
          7    > > FE_FETCH_R                                               $9, !3, ->31
   18     8    >   TYPE_CHECK                                   16  ~10     !3
          9      > JMPZ_EX                                          ~10     ~10, ->13
         10    >   STRLEN                                           ~11     !3
         11        IS_EQUAL                                         ~12     ~11, 1
         12        BOOL                                             ~10     ~12
         13    > > JMPZ                                                     ~10, ->27
   20    14    >   IS_EQUAL                                                 !3, !1
         15      > JMPZ                                                     ~13, ->18
   22    16    >   ECHO                                                     'Hay+numeros+repetidos+en+el+array'
         17      > JMP                                                      ->26
   26    18    >   IS_SMALLER                                       ~14     !3, 1
         19      > JMPNZ_EX                                         ~14     ~14, ->22
         20    >   IS_SMALLER                                       ~15     9, !3
         21        BOOL                                             ~14     ~15
         22    > > JMPZ                                                     ~14, ->25
   28    23    >   ECHO                                                     'El+numero+contiene+numeros+que+no+estan+entre+el+1+y+el+9'
         24      > JMP                                                      ->26
   32    25    >   ASSIGN                                                   !2, <true>
         26    > > JMP                                                      ->29
   38    27    >   ASSIGN                                                   !2, <false>
   39    28        ECHO                                                     'El+n%C3%B9mero+no+es+entero+o+tiene+m%C3%A0s+de+un+d%C3%ACgito'
   41    29    >   ASSIGN                                                   !1, !3
   16    30      > JMP                                                      ->7
         31    >   FE_FREE                                                  $9
   43    32        BOOL                                             ~19     !2
         33      > JMPZ                                                     ~19, ->35
   45    34    >   ECHO                                                     'Array+Correcto'
         35    > > JMP                                                      ->37
   50    36    >   ECHO                                                     'El+array+no+posee+9+digitos'
   51    37    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.58 ms | 1390 KiB | 13 Q