我设法为每个人创建了一个新行:
$content1= hot("britney") ? "britney found" : "";
$content2= hot("gaga") ? "gaga found" : "";
$content3= hot("carol") ? "carol found" : "";
$filename = 'result.txt';
$handle = fopen($filename, 'a');
fwrite($handle, "$Content1\r\n");
fwrite($handle, "$Content2\r\n");
fwrite($handle, "$Content3\r\n");
fwrite($handle, "$Content4\r\n");
fclose($handle);
但我有很多行,它会做很多修改...... 我怎么能自动化这个过程? 也许就像foreach<我真的不知道如何在这里实现这个'
我有以下代码:
require("class.XMLHttpRequest.php");
function hot($news){
$url="https://localhost/search.aspx?search=".$news."";
$ajax=new XMLHttpRequest();
$ajax->setRequestHeader("Cookie","Cookie: host");
$ajax->open("GET",$url,true);
$ajax->send(null);
if($ajax->status==200){
$rHeader=$ajax->getResponseHeader("Set-Cookie");
if(substr_count($rHeader, "Present!")>0) { return true; }
}else{ return false; }
}
echo ( hot("britney") )?"britney found":"<br>";
echo ( hot("gaga") )?"gaga found":"<br>";
echo ( hot("carol") )?"carol found":"<br>";
和
<?php
$filename = 'test.txt';
$Content = "Add this to the file\r\n";
echo "open";
$handle = fopen($filename, 'x+');
echo " write";
fwrite($handle, $Content);
echo " close";
fclose($handle);
?>
我的脚本中有很多echo ( hot("britney") )?"britney found":"<br>";
因为我想将它们发送到文件
如何为 echo ( hot("britney") )?"britney found":"<br>";
设置字符串,以便能够在我将代码发送到文件的代码中使用
我也不希望页面在屏幕上打印任何内容
答案 0 :(得分:1)
$Content = hot("britney") ? "britney found" : "<br>";
答案 1 :(得分:1)
只需将内容存储在变量中,然后编写变量。
// put stuff in $content instead of printing
$content = '';
$content .= hot("britney") ? "britney found" : "<br>";
$content .= hot("gaga") ? "gaga found" : "<br>";
$content .= hot("carol") ? "carol found" : "<br>";
// write to file
$handle = fopen($filename, 'x+');
fwrite($handle, $content);
fclose($handle);
答案 2 :(得分:1)
正如其他人已经说过的那样,将回声内容放入变量中,然后将其写入文件中。有两种方法可以做到这一点。您可以使用文件处理程序:
<?php
// "w" will create the file if it does not exist and overwrite if it does
// "a" will create the file if it does not exist and append to the end if it does
$file = fopen('/path/to/file', 'w');
fwrite($file, $content);
fclose($file);
稍微简单一点的方法是使用file_put_contents():
<?php
file_put_contents('/path/to/file', $contents);
如果你想附加到文件:
<?php
file_put_contents('/path/to/file', $contents, FILE_APPEND);
至于你的回声有条件的括号,我更喜欢以下内容:
<?php
$contents = '';
$contents .= (hot('britney') ? 'britney found' : '<br />');
如果您希望能够在网络浏览器之外轻松阅读文件,则应使用新行而不是<br />
来分隔输出。例如:
<?php
$contents = '';
$contents .= (hot('britney') ? 'britney found'."\n" : "\n");
答案 3 :(得分:0)
用变量替换所有echo
语句,然后将该变量写入文件。
$Content.= ( hot("britney") )?"britney found":"<br>";
等...
答案 4 :(得分:0)
首先,你的括号在错误的地方。应该是这样的:
echo(hot(“britney”)?“britney found”:“如果要捕获回声和其他输出,请使用ob_start和ob_flush方法。
但是,如果您向该文件发出HTTP请求,它将不会在屏幕上回显。
如果这就是你的意思,那就是你的答案。