我有一个文本文件“ output.txt”,它是shell命令的输出。我想突出显示该文件中某些单词,该单词被当作$ _GET ['word'],然后允许使用href下载。
我看到了多个问题,但在这种情况下似乎没有一个起作用。
代码:
$cmd = shell_exec("/usr/local/bin/clustalw2 -infile=input.txt -tree -type=protein -case=upper &");
$file = 'output.txt';
$content = explode("\n",file_get_contents("output.txt"));
$keyword = $_GET['word'];
$content = str_replace($keyword,'<span style="color:red">'.$keyword.'</span>',$content);
$file = file_put_contents($file, $content);
echo "<a href='http://some.thing.com/folder/output.txt'>Download Result file</a>";
突出显示文本也没有任何错误。
答案 0 :(得分:0)
我怀疑麻烦在于打开初始文件。以下对我有用。
我创建了/home/input.txt:
this is a test
that may
or may not work.
然后跑了
$cmd = shell_exec(" cp /home/input.txt output.txt");
$file = 'output.txt';
$content = explode("\n",file_get_contents("output.txt"));
$keyword = "may";
$content = str_replace($keyword,'<span style="color:red">'.$keyword.'</span>',$content);
$file = file_put_contents($file, implode("\n", $content));
echo "<a href='http://some.thing.com/folder/output.txt'>Download Result file</a>";
现在output.txt是:
this is a test
that <span style="color:red">may</span>
or <span style="color:red">may</span> not work.