ホームページ  >  記事  >  バックエンド開発  >  PHP バックアップ データベース クラスの共有_PHP チュートリアル

PHP バックアップ データベース クラスの共有_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:57:24784ブラウズ

phpバックアップデータベースクラス共有

phpバックアップデータベースクラス共有

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

/**

*

* @name php バックアップ データベース

* @param string $DbHost 接続ホスト

* @param string $DbUser ユーザー名

* @param string $DbPwd 接続パスワード

* @param string $DbName バックアップするデータベース

* @param string $saveFileName 保存されるファイルの名前は、日付によって区別され、現在のフォルダーに保存されます。

* @return Null

* @examplebackupMySqlData('localhost', 'root', '123456', 'YourDbName');

*

*/

関数backupMySqlData($DbHost, $DbUser, $DbPwd, $DbName, $saveFileName = '')

{

header("Content-type:text/html;charset=utf-8");

エラー報告(0);

set_time_limit(0);

echo 'データをバックアップ中です。お待​​ちください...
';

$link = mysql_connect($DbHost, $DbUser, $DbPwd) または die('データベース接続に失敗しました: ' .mysql_error());

mysql_select_db($DbName) または die('データベース接続に失敗しました: ' .mysql_error());

mysql_query('set names utf8');

//変数を宣言する

$isDropInfo = '';

$insertSQL = '';

$row = array();

$tables = array();

$tableStructure = array();

$fileName = ($saveFileName ? $saveFileName : 'MySQL_data_bakeup_') . '.sql';

// このデータベース内のすべてのテーブルを列挙します

$res = mysql_query("$DbName からテーブルを表示");

while ($row = mysql_fetch_row($res)) {

$tables[] = $row[0];

}

mysql_free_result($res);

// すべてのテーブルの作成ステートメントを列挙します

foreach ($tables as $val) {

$res = mysql_query("show create table $val", $link);

$row = mysql_fetch_row($res);

$isDropInfo = "DROP TABLE IF EXISTS `" . $val .

$tableStructure = $isDropInfo . $row[1] .

file_put_contents($fileName, $tableStructure, FILE_APPEND);

mysql_free_result($res);

}

// すべてのテーブルの INSERT ステートメントを列挙します

foreach ($tables as $val) {

$res = mysql_query("select * from $val");

// データのないテーブルに対しては挿入は実行されません

while ($row = mysql_fetch_row($res)) {

$sqlStr = "`".$val."` 値に挿入 (";

foreach($row as $v){

$sqlStr .= "'$v',";

}

//最後のカンマを削除します

$sqlStr = substr($sqlStr, 0, strlen($sqlStr) - 1);

$sqlStr .= ");rn";

file_put_contents($fileName, $sqlStr, FILE_APPEND);

}

mysql_free_result($res);

}

echo 'データのバックアップが成功しました! ';

}

// このメソッドを呼び出します

backupMySqlData('localhost', 'root', '123456', 'YouDbName');

?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/983323.html技術記事 PHPバックアップデータベースクラス共有PHPバックアップデータベースクラス共有41 42 43 44 4...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。