使用Excel Rows中的占位符创建多个html文件

时间:2017-11-24 02:09:18

标签: php html excel

我想从Excel电子表格的每一行创建多个HTML文件

EXCEL电子表格:

+-------+----------------+--------------+
|  Name |      Phone     | Description  |
+-------+----------------+--------------+
| James | 01234 5678910  | Text         |
| Clare | 16771 9432772  | Text         |
| Mike  | 08001 7745396  | Text         |
+-------+----------------+--------------+


我创建了一个“模板”HTML文件,其中包含占位符,例如:

    <div style="width:100%">

    {name}
    {phone}
    {description}

    </div>

我想使用Name列作为文件名,并将该行的每个单元格保存到HTML模板的占位符中。

代码执行完毕后,应创建名为“James.html”,“Clare.html”,“Mike.html”等的文件,其中包含{placeholder}部分中的内容。


我尝试使用CSV文件尝试此操作,但它不起作用....这是我的CSV / PHP代码:

<?
$base_template = file_get_contents('/template.html');
$file_to_read = '/sample.csv';

ini_set("auto_detect_line_endings", 1); 
$filename = '';

if (($handle = fopen($file_to_read, "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $name = $data[0];
        $address = $data[1];
        $description = $data[2];

        $filename = preg_replace('/[\s\W]+/','',$name);
        $filename =  substr($filename, 0, 10);

        $template = str_replace('{name}', $name, $base_template);
        $template = str_replace('{phone}', $phone, $template);
$template = str_replace('{description}', $description, $template);

        $file = fopen('/save/'.$filename.'.html',"w+");
        fwrite($file, $template);   
        fclose($file);
    }
    fclose($handle);
}
?>

如果有人有任何建议会很棒!谢谢

0 个答案:

没有答案