将 var_dump 保存到文本文件中

新手上路,请多包涵

我有用于 sql 查询的 php 代码

 <?
$server = "127.0.0.1";
$username = "root";
$password = "1";

$link= connecttodb($server,$username,$password);

function connecttodb($server,$username,$password)
{

    $rez=fopen("test.txt","ab");
    if ($link=mysql_connect ("$server","$username","$password",TRUE))
    {
        fwrite($rez,"".$server." \r\n");
	    echo "Connected successfully to >> " .$server ;

		$result = mysql_query('SHOW DATABASES');
        echo "<br>";
        while ($row = mysql_fetch_array($result))
        {
            var_dump ($row); }
	    }
    }
    ini_set('max_execution_time', 10);
    return $link;
?>

此代码在浏览器上打印我的数据库名称如何将数据库名称保存到文本文件中

 Connected successfully to >> 127.0.0.1
array(2) { [0]=> string(18) "information_schema" ["Database"]=> string(18) "information_schema" } array(2) { [0]=> string(2) "db" ["Database"]=> string(2) "db" } array(2) { [0]=> string(5) "mysql" ["Database"]=> string(5) "mysql" } array(2) { [0]=> string(10) "phpmyadmin" ["Database"]=> string(10) "phpmyadmin" } array(2) { [0]=> string(4) "test" ["Database"]=> string(4) "test" }

原文由 Yasser Abo Reida 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 846
2 个回答

您可以使用输出缓冲函数来捕获输出并将其写入文件。

 ob_flush();
ob_start();
while ($row = mysql_fetch_assoc($result)) {
    var_dump($row);
}
file_put_contents("dump.txt", ob_get_flush());

原文由 Barmar 发布,翻译遵循 CC BY-SA 3.0 许可协议

不要为此使用 var_dump,请像这样使用 serialize:

 <?php
$fp = fopen('vardump.txt', 'w');
fwrite($fp, serialize($myobj));
fclose($fp);
?>

要恢复它,您可以使用 unserialize($filecontents);通过从文件中读回它。

原文由 user4914655 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题