function make($s)
{
$str = <<< TEXT
<?php
//sport158配置文件
\$cache = <<< HTML
$s
HTML;
\$_CONF["catalog_product_item_top"] = unserialize(\$cache);
?>
TEXT;
//写入到文件
file_put_contents("test.php", $str);
}本来就是PHP自定义函数,里面还要写 <?php  ?> 这样的标记?晕

解决方案 »

  1.   

    <?php
    //sport158配置文件
    \$cache = <<< HTML
    $s
    HTML;
    \$_CONF["catalog_product_item_top"] = unserialize(\$cache);
    ?>你是要把上面这段,就是上面这段代码,写进一个文件里吗?<<< HTML,  <<<TEXT 这个,是什么意思?我学的少,不懂.......,我只知道EOD...呵呵
      

  2.   

    liuchengcn(飞豹游侠) 我就是要把函数里面的代码写成文本的,是为了生成的文本中含有php内容,这样可以当作一个php文件调用的
      

  3.   

    很简单!你没有遵循语法规则!

    $str = <<< TEXT

    TEXT;
    中,结束的TEXT;必须顶格。不能为了格式上的美观而出现任何字符!
      

  4.   

    唠叨说的没错,必须在行首,不能有任何缩进,否则出错
    $str = <<< TEXT
    <?php
    //sport158配置文件
    \$cache = <<< HTML
    $s
    HTML;
    \$_CONF["catalog_product_item_top"] = unserialize(\$cache);
    ?>
    TEXT;
    ......
      

  5.   

    xuzuning(唠叨),太谢谢您了,其实这个代码就是从您的一篇文章中找来的,相信您一定看出来了,没想到让我给改出语法问题了,惭愧!