我正在動態創建 .sql 文件并編寫創建表查詢,但查詢打印在一行中,但我需要它類似 $sql = "CREATE TABLE `tbl_demo` ( `system_id` varchar(200) NOT NULL, `last_name` varchar(200) NOT NULL, `first_name` varchar(200) NOT NULL, `full_name` varchar(200) NOT NULL, `phone` varchar(200) NOT NULL, `ext` varchar(200) NOT NULL, `email` varchar(200) NOT NULL, `dept` varchar(200) NOT NULL, `site` varchar(200) NOT NULL, `room` varchar(200) NOT NULL, `job_title` varchar(200) NOT NULL, `image` varchar(200) NOT NULL, `url` varchar(200) NOT NULL, `active` varchar(200) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";這是我的代碼。 <?php $content = file_get_contents('demo.csv'); $table = 'demo'; $exp = explode("\n", $content); echo '<pre>'; $headers = explode(',', strtolower(str_replace(' ', '_', $exp[0]))); $table_columns = array(); foreach ($headers as $header) { $table_columns[] = '`' . $header . '`' . ' VARCHAR(255)'; } $sql = 'CREATE TABLE ' . '`' . $table . '`' . '(' . implode(',', $table_columns) . ') ENGINE=InnoDB DEFAULT CHARSET=utf8'; print_r($sql); $myfile = fopen("temp/demo.sql", "a+") or die("Unable to open file!"); fwrite($myfile, $sql); fclose($myfile);任何解決方案表示贊賞!
1 回答

ABOUTYOU
TA貢獻1812條經驗 獲得超5個贊
將 php 中的單引號 (') 更改為雙引號 ("),并在行尾添加反斜杠 n (\n)。即
$VarToFile = "This is my line\n";
$VarToFile .= "This is a new line\n";
或者嘗試改變
implode(',', $table_columns)
到
implode(",\n", $table_columns)
- 1 回答
- 0 關注
- 247 瀏覽
添加回答
舉報
0/150
提交
取消