里面内容为<?php $CONFIG['obj_item'] = array (
'3001' =>
array(
'item_id' => '3001',
'init_storage_limit' => '0',
'et__limit' => array(
0 => array (
"level" => '0',
"purchase_limit_num" => '0',
),
),
'sell_coin' => '10',
'is_visible' => '1',
'limit_sell_time' => '0',
'decoration_value' => '0',
'activate_data' => '0',
'recipe_list' => '0',
),
'3002' =>
array(
'item_id' => '3002',
'init_storage_limit' => '0',
'et__limit' => array(
0 => array (
"level" => '0',
"purchase_limit_num" => '0',
),
),
'sell_coin' => '10',
'is_visible' => '1',
'limit_sell_time' => '0',
'decoration_value' => '0',
'activate_data' => '0',
'recipe_list' => '0',
),

?>。。没生成过.php文件和这种格式的。请问该如何做

解决方案 »

  1.   

    file_put_contents()
    fwrite()
    不都文件操作么
      

  2.   

    。。我是要用PHP程序生成一个PHP文件,文件里面的内容就是我贴出来的内容。不是要打开文件
      

  3.   

    文件操作不能生成文件么?
    fopen的参数你研究过么?
      

  4.   

    还真没研究过,就用fopen打开过文件。我研究下,多谢了
      

  5.   

    $ar = array('abcd', 'efg', 123);
    file_put_contents('my.php', '<?php $x = ' . var_export($ar) . '?>');然后打开 my.php 看看
      

  6.   

    $x的信息是空的。换var_dump也一样
      

  7.   

    不好意思,误导了你一下
    $ar = array('abcd', 'efg', 123);
    file_put_contents('my.php', '<?php $x = ' . var_export($ar, 1) . '?>');my.php内容
    <?php $x = array (
      0 => 'abcd',
      1 => 'efg',
      2 => 123,
    )?>
      

  8.   

    哟西。唠叨哥威武。。为啥你们都懂这么多?我开发2年PHP还只会玩玩ecshop,discuz之类。。
      

  9.   

    唠叨哥麻烦看下我的代码$data = array(
        array('item_id'=>1,'product_type'=>2,'et_type'=>3,'et_purchase_limit'=>array('level'=>10,'purchase_limit_num'=>10)),
        array('item_id'=>11,'product_type'=>22,'et_type'=>33,'et_purchase_limit'=>array('level'=>100,'purchase_limit_num'=>100)),
    );$bb = array();
    foreach($data as $item){
        $bb[] = array(
            $item['item_id']=>
            array(
                'item_id'=>$item['item_id'],
                'product_type'=>$item['product_type'],
                'et_type'=>$item['et_type'],
                'et_purchase_limit'=>array(
                    0 => array (
                        "level" => $item['et_purchase_limit']['level'],
                        "purchase_limit_num" => $item['et_purchase_limit']['purchase_limit_num'],
                    ),
                )
            ));
    }file_put_contents('my.php', '<?php $J7CONFIG[\'shop_item\'] = ' . var_export($bb, 1) . '?>');得到结果如下
    <?php $J7CONFIG['shop_item'] = array (
      0 => 
      array (

        1 => 
        array (
          'item_id' => 1,
          'product_type' => 2,
          'et_type' => 3,
          'et_purchase_limit' => 
          array (
            0 => 
            array (
              'level' => 10,
              'purchase_limit_num' => 10,
            ),
          ),
        ),
      ),
      1 => 
      array (

        11 => 
        array (
          'item_id' => 11,
          'product_type' => 22,
          'et_type' => 33,
          'et_purchase_limit' => 
          array (
            0 => 
            array (
              'level' => 100,
              'purchase_limit_num' => 100,
            ),
          ),
        ),
      ),
    )?>标红的2行能否去掉?因为我已经指定了KEY。就是item_id,我不想让它生成
      

  10.   

    那是 var_export 产生的下标号,不能去掉如果一定不要的话,那就得自己写函数处理了
      

  11.   

    请问如何写?循环的时候能否unset掉key呢?
      

  12.   

    你好像不是要去掉下标,而是数组多了一个层次吧?
    循环中改为
        $bb[$item['item_id']] = array(
                'item_id'=>$item['item_id'],
                'product_type'=>$item['product_type'],
                'et_type'=>$item['et_type'],
                'et_purchase_limit'=>array(
                    0 => array (
                        "level" => $item['et_purchase_limit']['level'],
                        "purchase_limit_num" => $item['et_purchase_limit']['purchase_limit_num'],
                    ),
                )
            );
      

  13.   

    额。确实如唠叨哥所说。就是这个意思。
    还有我是在服务器上面操作,并没有生成xx.php这个文件。是否要改为直接下载该文件才可以?
      

  14.   

    加了_DIR_ 文件生成了。我勒个去