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