我有一个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);
答案 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())