PHP escapeshellarg()不起作用

时间:2015-04-17 18:32:53

标签: php encryption

在第一个shell_exec()我加密邮件,在第二个shell_exec()我要解密我的密码。加密和解密功能运行良好。似乎第一个shell_exec()返回的数据类型不能用作第二个shell_exec()中的变量。我该怎么办?

<?php
 $plaintext = "unpuzzle";
 echo '<p>'.$plaintext.'</p>';
 $criptotext = shell_exec('java DES '. escapeshellarg($plaintext) .' 1');
 echo '<p>Criptotext: ' . $criptotext . '</p>';
 $plaintext = shell_exec('java DES '. escapeshellarg($criptotext) .' 2');
 echo '<p>Plaintext: ' . $plaintext . '</p>';
?>

1 个答案:

答案 0 :(得分:0)

shell_exec返回命令的输出,其中包括最后的换行符。在将此换行用作加密文本之前,您需要删除换行符。

$criptotext = rtrim(shell_exec('java DES ' . escapeshellarg($plaintext) . ' 1'), "\r\n");