PHP - mysql 转储不适用于密码中的符号
PHP - mysql dump doesn't work with symbol in password
我在 php
中尝试了 mysqldump
shell_exec("mysqldump --user=$username --password=$password --host=$host $database > dump.sql");
如果密码很简单,工作正常。但是当密码中有一个符号 &
在我的例子中,它不起作用。知道为什么,或者如何解决这个问题吗?
简短的回答可能是不要在密码中加入符号。但这不是我正在寻找的答案,而且一些数据库密码超出了我的范围。所以我需要一个解决方案或解决方法。
使用引号有效。感谢+Mubin
shell_exec("mysqldump --user='$username' --password='$password' --host=$host $databaseName > dump.sql");
鉴于您使用的是一些未知输入,我会使用 escapeshellcmd
,它应该能够处理所有事情(包括密码中的 '
)。
我在 php
中尝试了mysqldump
shell_exec("mysqldump --user=$username --password=$password --host=$host $database > dump.sql");
如果密码很简单,工作正常。但是当密码中有一个符号 &
在我的例子中,它不起作用。知道为什么,或者如何解决这个问题吗?
简短的回答可能是不要在密码中加入符号。但这不是我正在寻找的答案,而且一些数据库密码超出了我的范围。所以我需要一个解决方案或解决方法。
使用引号有效。感谢+Mubin
shell_exec("mysqldump --user='$username' --password='$password' --host=$host $databaseName > dump.sql");
鉴于您使用的是一些未知输入,我会使用 escapeshellcmd
,它应该能够处理所有事情(包括密码中的 '
)。