开发者

PHP ECHO VARIABLE

I managed to create a new line for each only with :

$content1= hot("britney") ? "britney found" : "";
$content2= hot("gaga") ? "gaga found" : "";
$content3= hot("carol") ? "carol found" : ""; 

$filename = 'result.txt';
$handle = fopen($filename, 'a');
fwrite开发者_C百科($handle, "$Content1\r\n");
fwrite($handle, "$Content2\r\n");
fwrite($handle, "$Content3\r\n");
fwrite($handle, "$Content4\r\n");
fclose($handle);

But i have many lines and it makes a lot of modifications... How could i automatize the process ? maybe something like foreach < i really don't know how to implement this one here'

I have the following codes:

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>"; 

AND

<?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);
?>

and i have many echo ( hot("britney") )?"britney found":"<br>"; in my script and because of that i want to send them to a file

how can i set a string for echo ( hot("britney") )?"britney found":"<br>";to be able to use it in my code that sends the info to file

i also don't want the page to print anything to the screen


Just store stuff in a variable then write variable.

// 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);


$Content = hot("britney") ? "britney found" : "<br>";


As others have already stated, put the contents of your echos into a variable then write that into a file. There are two ways to do this. You can use file handlers:

<?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);

A slightly simpler way is to use file_put_contents():

<?php
file_put_contents('/path/to/file', $contents);

And if you want to append to the file:

<?php
file_put_contents('/path/to/file', $contents, FILE_APPEND);

As for the parenthesis you have around the conditional for your echos, I prefer something more like the following:

<?php
$contents = '';
$contents .= (hot('britney') ? 'britney found' : '<br />');

If you want to be able to easily read the file outside of a web browser, you should use a new line instead of a <br /> to separate your output. For example:

<?php
$contents = '';
$contents .= (hot('britney') ? 'britney found'."\n" : "\n");


Replace all of the echo statements with a variable, then write that variable to a file.

$Content.= ( hot("britney") )?"britney found":"<br>";

etc...


First off, your parentheses are in the wrong place. Should be like this:

echo ( hot("britney") ? "britney found" : "
" );

If you want to capture your echo and other output, use the ob_start and ob_flush methods.

But if you're making HTTP requests to that file it won't echo on the screen.

If that's what you meant, then that's your answer.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜