尝试使用openssl调试PHP代码

尝试使用openssl调试PHP代码,php,encryption,Php,Encryption,我正在尝试调试以下代码。我正在使用try-and-catch块,但它仍然没有显示任何错误消息。该代码在5.3.8版本中正常工作,但升级到5.3.13后停止工作。我打开了“显示错误为真”,但无法获取错误。我收到“网站有编程错误”的信息。你能告诉我一些建议吗 error_reporting(-1); $conf['error_level'] = 2; ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE);

我正在尝试调试以下代码。我正在使用try-and-catch块,但它仍然没有显示任何错误消息。该代码在5.3.8版本中正常工作,但升级到5.3.13后停止工作。我打开了“显示错误为真”,但无法获取错误。我收到“网站有编程错误”的信息。你能告诉我一些建议吗

error_reporting(-1);
$conf['error_level'] = 2;
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);


    $SIZE = 32;
    $IV_SIZE = 16;
    $CIPHER = 'aes-256-ofb';  
    try {

         $secret = openssl_random_pseudo_bytes($SIZE);
       } 
    catch (Exception $e) {
             die ('Error occurred: ' . $e->getMessage());
         }

    $iv = openssl_random_pseudo_bytes($IV_SIZE);

    try {

        $first = openssl_encrypt( $_POST['first_name'], $CIPHER, $secret, FALSE, $iv);
       } 
    catch (Exception $e) 
    {
        die ('Error occurred: ' . $e->getMessage());
    }

在设置显示错误之前添加此行:

error_reporting(E_ALL);
我猜它只是在早期的php版本中工作,但在升级后就坏了。我认为开放SSL库不会抛出异常,因此将其包装在try/catch块中不会起任何作用。

error\u reporting(-1)
错误报告(E_ALL)做完全相同的事情。