0

我正在尝试使用以下代码创建具有数组声明的文件。但是变量名称不会出现在结果创建的页面中。

function createFile($fname,$code){
    $fp=fopen("products/".$fname,"w") or die("Can not open file");
    fwrite($fp,"<?php   
        $pageeInfo[productcode]=".$code.";
        ?>");

}
4

3 回答 3

4

单引号禁止变量插值。

'$'

但不要编写自修改代码;改用某种数据库。

于 2012-04-22T03:47:25.477 回答
1

完成此操作的正确方法是使用var_export

function createFile($fname, $code)
{
    return file_put_contents(
        "products/".$fname, // filename
        '<?php $pageInfo = ' // start tag
        .var_export(array( // we export an array
            'productcode' => $code,
            // add more keys if needed here
        ), true)
        .';' // end tag is not required
    );
}
于 2012-04-22T03:56:33.763 回答
0

看起来您正在嵌套 php 标签。您可以尝试取出嵌套的 php 标签。

function createFile($fname,$code){
    $fp=fopen("products/".$fname,"w") or die("Can not open file");
    fwrite($fp, $pageeInfo[productcode].'='.$code);
于 2012-04-22T03:48:44.197 回答