0

我正在尝试将一些简单的文本写入文本文件但写入不起作用,下面是我正在使用的代码:请问代码有什么问题?

<?php
// create short variable names

$tireqty = 24;
$oilqty = 34;
$sparkqty = 12;


echo "<p>Your order is as follows: </p>";
echo $tireqty." tires<br />";
echo $oilqty." bottles of oil<br />";
echo $sparkqty." spark plugs<br />";


@ $fp=fopen("/order.txt","w");

   if(!$fp){
     echo "The file is not exists";

     exit;
     }

$outputstring = $date.'\t'.$tireqty.' tires \t'.$oilqty.' oil\t'
     .$sparkqty.' spark plugs\t\$'.$totalamount.'\t'. $address.'\n';



fwrite($fp, $outputstring);
fclose($fp);

echo "Order have written into order.txt";
4

2 回答 2

0

在斜杠 (/) 之前放置一个点 (.) 表示当前目录

$fp=fopen("./order.txt","w");

也使用双引号

$outputstring = $date."\t".$tireqty." tires \t".$oilqty." oil\t"
 .$sparkqty." spark plugs\t\$".$totalamount."\t". $address."\n";

获得实际输出。\t \n 用作单引号中的字符

于 2013-09-10T12:12:26.853 回答
0

您正在尝试将文件写入根目录:

@ $fp=fopen("/order.txt","w");

/表示绝对路径。出于安全原因,99% 的 Web 服务器无权将文件写入根文件夹。您应该将文件写入/tmpWeb 服务器具有写入权限的其他目录。

$fp = fopen(dirname(__FILE__) . "/order.txt","w");

这会将文件“order.txt”写入与 PHP 脚本相同的目录。dirname获取文件路径的目录名,__FILE__是一个PHP常量,等于当前脚本的绝对路径。它可能等于类似/var/www/html/test.php.

自 PHP 5.3.O 起,该常量__DIR__也可用,等于dirname(__FILE__)

于 2013-09-10T12:10:19.100 回答