3v4l.org

run code in 300+ PHP versions simultaneously
<?php $cert = "-----BEGIN CERTIFICATE----- MIIDXDCCAkSgAwIBAgIKq/f5U3FzthdKUzANBgkqhkiG9w0BAQUFADBcMRIwEAYD VQQDEwlzZXRhcGRmLWExCTAHBgNVBAoTADEJMAcGA1UECxMAMSMwIQYJKoZIhvcN AQkBFhRzdXBwb3J0QHNldGFzaWduLmNvbTELMAkGA1UEBhMCREUwHhcNMTUwOTA4 MDkzNDExWhcNMjAwOTA4MDkzNDExWjBcMRIwEAYDVQQDEwlzZXRhcGRmLWExCTAH BgNVBAoTADEJMAcGA1UECxMAMSMwIQYJKoZIhvcNAQkBFhRzdXBwb3J0QHNldGFz aWduLmNvbTELMAkGA1UEBhMCREUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK AoIBAQCkmTLvUIYfqAKC1CHVgABlemrFIVRm4JGeB0jIGofyrm3yVwR4YcK0eUmt /0nbFfsFsU0/C9dXKZYD42t5YpLFsj666Z1EoU1CfSIW2bf0HaWVJ+oNT5twS3dv RTzAcnPM44GxO4y6GUW6un0/bT/MZbFKbb3NI1L0mwY7EoqUXR68XxuHqWETaslm Sbp1XvbLsJjgV9X3ihi7JC7A9kEzrKh+RBsXEXwlSv5JO2TUdwq9P4EbjqvgiaV1 vFNAArioX5pIUIm9ahAm8d7jjW6DFfV798rTzaQ3GJs0yC3UD6xhmbTbdC/D9Pot 8RGu89Fx6E+O5j4LwGH4kiYjgvYZAgMBAAGjIDAeMA8GCSqGSIb3LwEBCgQCBQAw CwYDVR0PBAQDAgOYMA0GCSqGSIb3DQEBBQUAA4IBAQBCA8iXz7zxAmCWNZ0faiLm aKw8u2PUq+EPKrGKc9Q70Ksw/e/EHvWrghFzmu5MOZRn/QIWq++sbbc8eOiaRDE8 lWCW596FLW4habXKw0sjDNcyEBArPgDp17O6NgHqI2U1KL1P2Y40e0YH2BWxNS+f pmWZekjiC6jfId2JGsyPZUTX4USwthG4dFX0/BWYg+K7kXvQzMobes2NxW3Iqn8h FUNgraCzlQMSfE2gwAMSUXTJubUGorj4LFYSiLIIJvf6KlmuR5uOIi5lSjSeZf5E FLEHVhrz3o2icUeyb1K1BTAQRZ/H3GZ0QpgqSK5vmuV9C+rzezQMoy4/8UUnNPMt -----END CERTIFICATE----- "; $pkey = "-----BEGIN PRIVATE KEY----- MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCkmTLvUIYfqAKC 1CHVgABlemrFIVRm4JGeB0jIGofyrm3yVwR4YcK0eUmt/0nbFfsFsU0/C9dXKZYD 42t5YpLFsj666Z1EoU1CfSIW2bf0HaWVJ+oNT5twS3dvRTzAcnPM44GxO4y6GUW6 un0/bT/MZbFKbb3NI1L0mwY7EoqUXR68XxuHqWETaslmSbp1XvbLsJjgV9X3ihi7 JC7A9kEzrKh+RBsXEXwlSv5JO2TUdwq9P4EbjqvgiaV1vFNAArioX5pIUIm9ahAm 8d7jjW6DFfV798rTzaQ3GJs0yC3UD6xhmbTbdC/D9Pot8RGu89Fx6E+O5j4LwGH4 kiYjgvYZAgMBAAECggEABO4JOGF4KOvQanB11HYNXPy4BLA5Pc0RU3M6pvKjen1m sdzRF5Vu/laJIkbchI0xm+Op8X7Wa+gFFBf8RLIS/QyYBCNh2Fe/74M9sYNDFxLJ vjBIOm6VVF1QRhMD7SwoY303adJjpkHCRMPX4z3PjLzJfPYROpsJnaWkf8GwCJ4+ kufOhYcE8ekuLX7EzXFU74Uo0OnMEhMJgiAjlHhC21YLkgLoGq45sdktVgvD6sds 7BcmH6oUCDCJ8wxUVM1+Ks1D3vKHfeAhCFHvj9M/lf5OWylhmQh4CQf+NMDNsAc6 mXNIzUvZEgs/PJpd3SymHchf60m6faJtGv43GsdsgQKBgQDUx8t649O/vGRI26t4 4XrzVC2w5271UlhFaRiH03BrV+pECVoH4bw+ZIUuGke2xe+LrNkhMNJSGcbB0WDa Jes+4Gf++AuSXRvMo+xHenfgUWQqYHJPkh5q6gknZ2YDfikFNLdqApXvp0m+FaVP +F/2HMjQfTITQgkAiEn45s4agQKBgQDGCAZkIUcdyXQTplLE0Zx1/uiTBrQGyzsb cDgAQIHt19wIRjoGOFatAj6TQ5gUj9Remn12v6d5Wi02i7hlu8V6O1VXLGqqeQ27 0MHBXzrFBVljOz96D7VP5Xx0DB1cGMbtg5ivjd91OUVrwC7fbXE9sfOI1FqlTb7p 6xi9Wl+fmQKBgGdzR/vUfqPOvVcq7gBUaAmb2KcUrj65rU753MJUy2h1EuHHRi1k 07fl+VZD0rALJf7bp6laajcebyLWYGdPXkNwqT8ua7naaOSiogLSiSvXhoKP56PG H+HNLWwp+lAia2Erky0IWstsow62yWvLDyTCM+QhqlHwnh3TJVvNI1GBAoGAUl+y MOJ6z5Ql2aqc0UwT1i1Tlxz5s73D93Tlho1Ovp3E5Bg6OK4kt9CwMNe0IhF2GGgQ +l1cj6kIF6Fk8cR6r46QwDM0p3a1VMPQZNx0+NFxzkot7FsuY26lJyyG5fFUhiXw VE4ifoN1Mg3+MWg3657jG66hihNd77WgU9uM3TkCgYEAypuvVrfFrrtXnbEUcBHq mguKumn9miD9DPb6gi8ZaKOddGzw+qFPukiqi7rM3oRMg02evfK/VQC87Gmev663 RV9sQOlB9gNlMOOw/0R3ABEWDoSRCcrLhb6Z5Y72WVnZvpTPO0cDw2i1hyaEM6d+ 2WR7c6FhRCLxG0DObEOfiO0= -----END PRIVATE KEY----- "; $tmpPath = tempnam(sys_get_temp_dir(), 'test'); $content = "A simple \x1a test."; file_put_contents($tmpPath, $content); $outPath = tempnam(sys_get_temp_dir(), 'test'); openssl_pkcs7_sign( $tmpPath, $outPath, $cert, $pkey, array(), PKCS7_BINARY | PKCS7_DETACHED ); var_dump(strpos(file_get_contents($outPath), $content) !== false);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/OnKD9
function name:  (null)
number of ops:  44
compiled vars:  !0 = $cert, !1 = $pkey, !2 = $tmpPath, !3 = $content, !4 = $outPath
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '-----BEGIN+CERTIFICATE-----%0AMIIDXDCCAkSgAwIBAgIKq%2Ff5U3FzthdKUzANBgkqhkiG9w0BAQUFADBcMRIwEAYD%0AVQQDEwlzZXRhcGRmLWExCTAHBgNVBAoTADEJMAcGA1UECxMAMSMwIQYJKoZIhvcN%0AAQkBFhRzdXBwb3J0QHNldGFzaWduLmNvbTELMAkGA1UEBhMCREUwHhcNMTUwOTA4%0AMDkzNDExWhcNMjAwOTA4MDkzNDExWjBcMRIwEAYDVQQDEwlzZXRhcGRmLWExCTAH%0ABgNVBAoTADEJMAcGA1UECxMAMSMwIQYJKoZIhvcNAQkBFhRzdXBwb3J0QHNldGFz%0AaWduLmNvbTELMAkGA1UEBhMCREUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK%0AAoIBAQCkmTLvUIYfqAKC1CHVgABlemrFIVRm4JGeB0jIGofyrm3yVwR4YcK0eUmt%0A%2F0nbFfsFsU0%2FC9dXKZYD42t5YpLFsj666Z1EoU1CfSIW2bf0HaWVJ%2BoNT5twS3dv%0ARTzAcnPM44GxO4y6GUW6un0%2FbT%2FMZbFKbb3NI1L0mwY7EoqUXR68XxuHqWETaslm%0ASbp1XvbLsJjgV9X3ihi7JC7A9kEzrKh%2BRBsXEXwlSv5JO2TUdwq9P4EbjqvgiaV1%0AvFNAArioX5pIUIm9ahAm8d7jjW6DFfV798rTzaQ3GJs0yC3UD6xhmbTbdC%2FD9Pot%0A8RGu89Fx6E%2BO5j4LwGH4kiYjgvYZAgMBAAGjIDAeMA8GCSqGSIb3LwEBCgQCBQAw%0ACwYDVR0PBAQDAgOYMA0GCSqGSIb3DQEBBQUAA4IBAQBCA8iXz7zxAmCWNZ0faiLm%0AaKw8u2PUq%2BEPKrGKc9Q70Ksw%2Fe%2FEHvWrghFzmu5MOZRn%2FQIWq%2B%2Bsbbc8eOiaRDE8%0AlWCW596FLW4habXKw0sjDNcyEBArPgDp17O6NgHqI2U1KL1P2Y40e0YH2BWxNS%2Bf%0ApmWZekjiC6jfId2JGsyPZUTX4USwthG4dFX0%2FBWYg%2BK7kXvQzMobes2NxW3Iqn8h%0AFUNgraCzlQMSfE2gwAMSUXTJubUGorj4LFYSiLIIJvf6KlmuR5uOIi5lSjSeZf5E%0AFLEHVhrz3o2icUeyb1K1BTAQRZ%2FH3GZ0QpgqSK5vmuV9C%2BrzezQMoy4%2F8UUnNPMt%0A-----END+CERTIFICATE-----%0A'
   24     1        ASSIGN                                                   !1, '-----BEGIN+PRIVATE+KEY-----%0AMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCkmTLvUIYfqAKC%0A1CHVgABlemrFIVRm4JGeB0jIGofyrm3yVwR4YcK0eUmt%2F0nbFfsFsU0%2FC9dXKZYD%0A42t5YpLFsj666Z1EoU1CfSIW2bf0HaWVJ%2BoNT5twS3dvRTzAcnPM44GxO4y6GUW6%0Aun0%2FbT%2FMZbFKbb3NI1L0mwY7EoqUXR68XxuHqWETaslmSbp1XvbLsJjgV9X3ihi7%0AJC7A9kEzrKh%2BRBsXEXwlSv5JO2TUdwq9P4EbjqvgiaV1vFNAArioX5pIUIm9ahAm%0A8d7jjW6DFfV798rTzaQ3GJs0yC3UD6xhmbTbdC%2FD9Pot8RGu89Fx6E%2BO5j4LwGH4%0AkiYjgvYZAgMBAAECggEABO4JOGF4KOvQanB11HYNXPy4BLA5Pc0RU3M6pvKjen1m%0AsdzRF5Vu%2FlaJIkbchI0xm%2BOp8X7Wa%2BgFFBf8RLIS%2FQyYBCNh2Fe%2F74M9sYNDFxLJ%0AvjBIOm6VVF1QRhMD7SwoY303adJjpkHCRMPX4z3PjLzJfPYROpsJnaWkf8GwCJ4%2B%0AkufOhYcE8ekuLX7EzXFU74Uo0OnMEhMJgiAjlHhC21YLkgLoGq45sdktVgvD6sds%0A7BcmH6oUCDCJ8wxUVM1%2BKs1D3vKHfeAhCFHvj9M%2Flf5OWylhmQh4CQf%2BNMDNsAc6%0AmXNIzUvZEgs%2FPJpd3SymHchf60m6faJtGv43GsdsgQKBgQDUx8t649O%2FvGRI26t4%0A4XrzVC2w5271UlhFaRiH03BrV%2BpECVoH4bw%2BZIUuGke2xe%2BLrNkhMNJSGcbB0WDa%0AJes%2B4Gf%2B%2BAuSXRvMo%2BxHenfgUWQqYHJPkh5q6gknZ2YDfikFNLdqApXvp0m%2BFaVP%0A%2BF%2F2HMjQfTITQgkAiEn45s4agQKBgQDGCAZkIUcdyXQTplLE0Zx1%2FuiTBrQGyzsb%0AcDgAQIHt19wIRjoGOFatAj6TQ5gUj9Remn12v6d5Wi02i7hlu8V6O1VXLGqqeQ27%0A0MHBXzrFBVljOz96D7VP5Xx0DB1cGMbtg5ivjd91OUVrwC7fbXE9sfOI1FqlTb7p%0A6xi9Wl%2BfmQKBgGdzR%2FvUfqPOvVcq7gBUaAmb2KcUrj65rU753MJUy2h1EuHHRi1k%0A07fl%2BVZD0rALJf7bp6laajcebyLWYGdPXkNwqT8ua7naaOSiogLSiSvXhoKP56PG%0AH%2BHNLWwp%2BlAia2Erky0IWstsow62yWvLDyTCM%2BQhqlHwnh3TJVvNI1GBAoGAUl%2By%0AMOJ6z5Ql2aqc0UwT1i1Tlxz5s73D93Tlho1Ovp3E5Bg6OK4kt9CwMNe0IhF2GGgQ%0A%2Bl1cj6kIF6Fk8cR6r46QwDM0p3a1VMPQZNx0%2BNFxzkot7FsuY26lJyyG5fFUhiXw%0AVE4ifoN1Mg3%2BMWg3657jG66hihNd77WgU9uM3TkCgYEAypuvVrfFrrtXnbEUcBHq%0AmguKumn9miD9DPb6gi8ZaKOddGzw%2BqFPukiqi7rM3oRMg02evfK%2FVQC87Gmev663%0ARV9sQOlB9gNlMOOw%2F0R3ABEWDoSRCcrLhb6Z5Y72WVnZvpTPO0cDw2i1hyaEM6d%2B%0A2WR7c6FhRCLxG0DObEOfiO0%3D%0A-----END+PRIVATE+KEY-----%0A'
   54     2        INIT_FCALL                                               'tempnam'
          3        INIT_FCALL                                               'sys_get_temp_dir'
          4        DO_ICALL                                         $7      
          5        SEND_VAR                                                 $7
          6        SEND_VAL                                                 'test'
          7        DO_ICALL                                         $8      
          8        ASSIGN                                                   !2, $8
   56     9        ASSIGN                                                   !3, 'A+simple+%1A+test.'
   57    10        INIT_FCALL                                               'file_put_contents'
         11        SEND_VAR                                                 !2
         12        SEND_VAR                                                 !3
         13        DO_ICALL                                                 
   59    14        INIT_FCALL                                               'tempnam'
         15        INIT_FCALL                                               'sys_get_temp_dir'
         16        DO_ICALL                                         $12     
         17        SEND_VAR                                                 $12
         18        SEND_VAL                                                 'test'
         19        DO_ICALL                                         $13     
         20        ASSIGN                                                   !4, $13
   61    21        INIT_FCALL_BY_NAME                                       'openssl_pkcs7_sign'
   62    22        SEND_VAR_EX                                              !2
         23        SEND_VAR_EX                                              !4
         24        SEND_VAR_EX                                              !0
         25        SEND_VAR_EX                                              !1
   66    26        SEND_VAL_EX                                              <array>
   67    27        FETCH_CONSTANT                                   ~15     'PKCS7_BINARY'
         28        FETCH_CONSTANT                                   ~16     'PKCS7_DETACHED'
         29        BW_OR                                            ~17     ~15, ~16
         30        SEND_VAL_EX                                              ~17
         31        DO_FCALL                                      0          
   70    32        INIT_FCALL                                               'var_dump'
         33        INIT_FCALL                                               'strpos'
         34        INIT_FCALL                                               'file_get_contents'
         35        SEND_VAR                                                 !4
         36        DO_ICALL                                         $19     
         37        SEND_VAR                                                 $19
         38        SEND_VAR                                                 !3
         39        DO_ICALL                                         $20     
         40        TYPE_CHECK                                  1018  ~21     $20
         41        SEND_VAL                                                 ~21
         42        DO_ICALL                                                 
         43      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
172.26 ms | 1405 KiB | 25 Q