Web Analytics
 Laravel Export Sql

Laravel Export Sql


public function backup()

{

//echo "ok";

$DbName = env('DB_DATABASE');

$get_all_table_query = "SHOW TABLES ";

$result = DB::select(DB::raw($get_all_table_query));

 

$prep = "Tables_in_$DbName";

foreach ($result as $res) {

$tables[] = $res->$prep;

}



 

$connect = DB::connection()->getPdo();

 

$get_all_table_query = "SHOW TABLES";

$statement = $connect->prepare($get_all_table_query);

$statement->execute();

$result = $statement->fetchAll();


 

$output = '';

foreach ($tables as $table) {

$show_table_query = "SHOW CREATE TABLE " . $table . "";

$statement = $connect->prepare($show_table_query);

$statement->execute();

$show_table_result = $statement->fetchAll();

 

foreach ($show_table_result as $show_table_row) {

$output .= "\n\n" . $show_table_row["Create Table"] . ";\n\n";

}

$select_query = "SELECT * FROM " . $table . "";

$statement = $connect->prepare($select_query);

$statement->execute();

$total_row = $statement->rowCount();

 

for ($count = 0; $count < $total_row; $count++) {

$single_result = $statement->fetch(\PDO::FETCH_ASSOC);

$table_column_array = array_keys($single_result);

$table_value_array = array_values($single_result);

$output .= "\nINSERT INTO $table (";

$output .= "" . implode(", ", $table_column_array) . ") VALUES (";

$output .= "'" . implode("','", $table_value_array) . "');\n";

}

}

$file_name = 'database_backup_on_' . date('y-m-d') . '.sql';

$file_handle = fopen($file_name, 'w+');

fwrite($file_handle, $output);

fclose($file_handle);

header('Content-Description: File Transfer');

header('Content-Type: application/octet-stream');

header('Content-Disposition: attachment; filename=' . basename($file_name));

header('Content-Transfer-Encoding: binary');

header('Expires: 0');

header('Cache-Control: must-revalidate');

header('Pragma: public');

header('Content-Length: ' . filesize($file_name));

ob_clean();

flush();

readfile($file_name);

unlink($file_name);

}


Lanjut Part : 1
Jam : 08:46:51
Durasi Part : 0:0:1
Durasi Total : 0:0:1

Punya Pertanyaan , Silahkan Whatsapp Langsung
Muhammad Ullil Fahri
WA : 089696380422
Tautan WA : https://wa.me/message/SG4YA2XQP5FPE1
Theme Customizer

Theme Styles