Php 使用mysqldump导出数据库时发生未捕获错误
这是我在运行代码时遇到的错误 未捕获错误:调用C:\xampp\htdocs\qtqt\admin\db backup.php中未定义的函数close()。第15行的C:\xampp\htdocs\qtqt\admin\db-backup.php中抛出了15堆栈跟踪:#0{main} 这是代码() 代码生成一个mydata.sql文件,但该文件为空Php 使用mysqldump导出数据库时发生未捕获错误,php,mysql,Php,Mysql,这是我在运行代码时遇到的错误 未捕获错误:调用C:\xampp\htdocs\qtqt\admin\db backup.php中未定义的函数close()。第15行的C:\xampp\htdocs\qtqt\admin\db-backup.php中抛出了15堆栈跟踪:#0{main} 这是代码() 代码生成一个mydata.sql文件,但该文件为空 <?php $filename = 'database/mydata.sql'; $database = 'stock'; $user
<?php
$filename = 'database/mydata.sql';
$database = 'stock';
$user = 'root';
$password = '';
$host = 'localhost';
/**
* DO NOT EDIT BELOW THIS LINE
*/
$fp = @fopen( $filename, 'w+' );
if( !$fp ) {
echo 'Impossible to create <b>'. $filename .'</b>, please manually create one and assign it full write privileges: <b>777</b>';
exit;
}
close( $fp );
$command = 'mysqldump --opt -h '. $host .' -u '. $user .' -p'. $password .' '. $database .' > '. $filename;
exec( $command, $output = array(), $worked );
switch( $worked ) {
case 0:
echo 'Database <b>'. $database .'</b> successfully exported to <b>'. $filename .'</b>';
break;
case 1:
echo 'There was a warning during the export of <b>'. $database .'</b> to <b>'. $filename .'</b>';
break;
case 2:
echo 'There was an error during import.'
. 'Please make sure the import file is saved in the same folder as this script and check your values:'
. '<br/><br/><table>'
. '<tr><td>MySQL Database Name:</td><td><b>'. $database .'</b></td></tr>'
. '<tr><td>MySQL User Name:</td><td><b>'. $user .'</b></td></tr>'
. '<tr><td>MySQL Password:</td><td><b>NOTSHOWN</b></td></tr>'
. '<tr><td>MySQL Host Name:</td><td><b>'. $host .'</b></td></tr>'
. '<tr><td>MySQL Import Filename:</td><td><b>'. $filename .'</b></td>'
. '</tr></table>'
;
break;
}
close()应该做什么?它是在某处定义的吗?(应该是fclose()
)它没有在任何地方定义,我尝试了你的代码,但出现了一个错误。>fclose()只需要1个参数,0给定更改close($fp)代码>至fclose($fp)
@kerbholz抱歉,我不知道我在github上给作者留下了评论。