如何从php文件生成新文件读取

时间:2016-04-07 14:11:07

标签: php

我有一个php文件。我已将数组项写入index.php文件中的标记:

<?php 
  include 'arlequin_parser.php';
  $arlequin=new arlequin_parser();
  $dizi=$arlequin->arlequin_parser();
?>
[Profile]
  Title = "<?= $dizi['profiles']['Title'] ?>"
  NbSamples = <?= $dizi['profiles']['NbSamples'] ?>
  DataType = <?= $dizi['profiles']['DataType'] ?>
  GenotypicData = <?= $dizi['profiles']['GenotypicData'] ?>
  LocusSeparator = <?= $dizi['profiles']['LocusSeparator'] ?>
  MissingData = "<?= $dizi['profiles']['MissingData'] ?>"
  GameticPhase = <?= $dizi['profiles']['GameticPhase'] ?>
  RecessiveData = <?= $dizi['profiles']['RecessiveData'] ?>


[Data]
<?php foreach ($dizi['Data'] as $key=>$value): ?>
  [[Samples]]
    SampleName = "<?= $value['SampleName'] ?>"
    SampleSize = <?= $value['SampleSize'] ?>
    SampleData = {
        <?php foreach ($value['SampleData'] as $k=>$v): ?>
    <?= $v['individual'] ?>  <?= $v['repetition'] ?>    <?= $v['data']['dataString1'] ?>
            <?= $v['data']['dataString2'] ?>
    <?php endforeach; ?>
    }

  <?php endforeach; ?>

我想要一个新的文本文件(newtext.txt),其数据读取来自index.php文件。如何生成一个新文件,单击按钮或href链接。 newtext.txt应该是:

[Profile]
  Title = "Hello World"
  NbSamples = 52
  DataType = MICROSAT
  GenotypicData = 1
  LocusSeparator = WHITESPACE
  MissingData = "?"
  GameticPhase = 0
  RecessiveData = 0


[Data]
  [[Samples]]
    SampleName = "pop_82"
    SampleSize = 24
    SampleData = {
    696 6969 669
    598 6965 658
    }

我尝试使用代码,但代码无效:

$output = file_get_contents('index.php');

$file = fopen('new_text.txt', 'w');
fwrite($file, $output);
fclose($file);

2 个答案:

答案 0 :(得分:0)

基本PHP IO API

$handle = fopen('newtext.txt', 'a+');
....
fwrite($handle, '[Profile]' . PHP_EOL);
$profileArray = $dizi['profile'];
foreach($profileArray as $key => $value)
{
    $isString = is_string($value);
     fwrite($handle, $key. ' = ' . ($isString?'"' : '') . $value . ($isString?'"':'') . PHP_EOL); // PHP_EOL inserts new line 
}
...
fflush($handle);
fclose($handle);

答案 1 :(得分:0)

我找到了一个解决方案,如果&#34; index.php&#34;文件在同一目录中,如下面的代码:

if(fm.getFragments().isEmpty())