Надеемся получить некоторую помощь при добавлении условия в этот цикл
Текущий код работает, но есть предположение, что данные, которые я пытаюсь собрать, находятся под [0]
однако после некоторого тестирования я обнаружил, что это не так, и мне нужно проверить все элементы [0], [1], [2]
.. трудно объяснить, поэтому, пожалуйста, обратитесь к изображению ниже для пошагового уточнения.
$count = count($cert['tbsCertificate']['extensions'][0]['extnValue']); for($i = 0; $i < $count; $i++) { if(array_key_exists('dNSName', $cert['tbsCertificate']['extensions'][0]['extnValue'][$i])) { $value = $cert['tbsCertificate']['extensions'][0]['extnValue'][$i]['dNSName']; $item = $i; echo 'DNSName',$item,' : ', $value,"\n"; } }
Вот визуальное представление о том, что нужно делать.
PS Я не эксперт по php, поэтому мне понадобится ваша помощь для написания кода.
$extensions = count($cert['tbsCertificate']['extensions']); for($j = 0; $j < $extensions; $j++) { $count = count($cert['tbsCertificate']['extensions'][$j]['extnValue']); for($i = 0; $i < $count; $i++) { if(array_key_exists('dNSName', $cert['tbsCertificate']['extensions'][$j]['extnValue'][$i])) { $value = $cert['tbsCertificate']['extensions'][$j]['extnValue'][$i]['dNSName']; $item = $i; echo 'DNSName',$item,' : ', $value,"\n"; } } }
– СЕРТИФИКАТ –
-----BEGIN CERTIFICATE----- MIIHqjCCBpKgAwIBAgIQbY5du3wWeFH4otbLa18wRTANBgkqhkiG9w0BAQsFADB3 MQswCQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAd BgNVBAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMTH1N5bWFudGVj IENsYXNzIDMgRVYgU1NMIENBIC0gRzMwHhcNMTQwNDMwMDAwMDAwWhcNMTUwNzE3 MjM1OTU5WjCCASkxEzARBgsrBgEEAYI3PAIBAxMCVVMxGTAXBgsrBgEEAYI3PAIB AgwIRGVsYXdhcmUxHTAbBgNVBA8TFFByaXZhdGUgT3JnYW5pemF0aW9uMRAwDgYD VQQFEwcyMTU4MTEzMQswCQYDVQQGEwJVUzEOMAwGA1UEEQwFOTQwNDMxEzARBgNV BAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDU1vdW50YWluIFZpZXcxGTAXBgNVBAkM EDM1MCBFbGxpcyBTdHJlZXQxHTAbBgNVBAoMFFN5bWFudGVjIENvcnBvcmF0aW9u MScwJQYDVQQLDB5Db3JwIE1rdGcgJiBDb21tcyAtIE9ubGluZSBFeHAxGTAXBgNV BAMMEHd3dy5zeW1hbnRlYy5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK AoIBAQCmz0vJ7McLUYVToIQzqWDLzUFD1uhAOz+3XAHXGnAOGwWw9fXGFAjWkE65 uC2pC/ZcMUarS+aJvvrCNB4mEewPiat0+9QRHEh/iCxFvhhLxM95HTe+b0Qckp3K nKOutJNLdKCzkY1PUUeciV1rThGdh4X9DRt4TbqSyHz5MaOv10XieyHTe+XrhxHD LhmJCrzNKgEZsNOhHS0kfDrCXB0zZ+D1P5/6BmWfip61XsFyDLIqlKcWpgqGSscO e5QcSxKyKi5S6mldxMGfxH61HCBROs8ZpmADb7wJ85dZ0xZlRmdTQOUdttl9bAFF lVlH10GYRrWU+/KaoPTVUZHwPUxbAgMBAAGjggN8MIIDeDCCAisGA1UdEQSCAiIw ggIeghtzdGF0aWMxLnN5bWFudGVjY29udGVudC5jb22CG3N0YXRpYzIuc3ltYW50 ZWNjb250ZW50LmNvbYIbc3RhdGljMy5zeW1hbnRlY2NvbnRlbnQuY29tghNmYXN0 ZXIuc3ltYW50ZWMuY29tgg9nby5zeW1hbnRlYy5jb22CDm0uc3ltYW50ZWMuY29t gh1zZWN1cml0eXJlc3BvbnNlLnN5bWFudGVjLmNvbYIQd3d3LnN5bWFudGVjLmNv bYIPbXkuc3ltYW50ZWMuY29tghdwYXJ0bmVybmV0LnN5bWFudGVjLmNvbYISbXkt cWEuc3ltYW50ZWMuY29tghNteS11YXQuc3ltYW50ZWMuY29tghpwYXJ0bmVybmV0 LXFhLnN5bWFudGVjLmNvbYIbcGFydG5lcm5ldC11YXQuc3ltYW50ZWMuY29tghtw YXJ0bmVybmV0LXNpdC5zeW1hbnRlYy5jb22CIHBhcnRuZXJuZXQtaW50ZXJuYWwu c3ltYW50ZWMuY29tghxwYXJ0bmVybmV0LXRlbXAuc3ltYW50ZWMuY29tghVzaXRl cy1xYS5zeW1hbnRlYy5jb22CFnNpdGVzLXVhdC5zeW1hbnRlYy5jb22CG3NpdGVz LWludGVybmFsLnN5bWFudGVjLmNvbYISc2l0ZXMuc3ltYW50ZWMuY29tghViY3Bv cnRhbC5zeW1hbnRlYy5jb20wCQYDVR0TBAIwADAOBgNVHQ8BAf8EBAMCBaAwHQYD VR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMGYGA1UdIARfMF0wWwYLYIZIAYb4 RQEHFwYwTDAjBggrBgEFBQcCARYXaHR0cHM6Ly9kLnN5bWNiLmNvbS9jcHMwJQYI KwYBBQUHAgIwGRoXaHR0cHM6Ly9kLnN5bWNiLmNvbS9ycGEwHwYDVR0jBBgwFoAU AVmr5906C1mmZGPWzyAHV9WR52owKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3Ny LnN5bWNiLmNvbS9zci5jcmwwVwYIKwYBBQUHAQEESzBJMB8GCCsGAQUFBzABhhNo dHRwOi8vc3Iuc3ltY2QuY29tMCYGCCsGAQUFBzAChhpodHRwOi8vc3Iuc3ltY2Iu Y29tL3NyLmNydDANBgkqhkiG9w0BAQsFAAOCAQEALttpAtX5PT4WS89MysOHldNr 764RwDutieStd1i0SxPixuvYrpMkBqooK6HcWHXMRf4dLRUhYbWh3rmWaRVrP9ja LQbcjpdDcInD3XNkq3evR5N4wkyZNknjrQgvruQQYBzSNqX2HeYfJn/+Vc/+70v9 0Iik+GlOYuCacmZkCR7HW4HAXwPRZds+RPTteh+XDxBQkgMlivylgy4qWqyOVVS3 103qpWp2PCJDpYFVBZWedly0DNjlWbNRvSFJEUqwP8OeJ3+C6zNdNJPdFmCC1YFr o8s3Lti08voNZlbPGl/C2Ko0oRoQ67m/aUGkLehHfionykCTpSIHL965TW+Y4g== -----END CERTIFICATE-----
– ОБНОВЛЕНИЕ 2 (Текущий выход) –
Окружать этот код
$extensions = count($cert['tbsCertificate']['extensions']); for($j = 0; $j < $extensions; $j++) { Existing code }
И замените расширения [0] на расширения [j]