3

変数をテキスト ファイルに書き込むスクリプトがあり、fwrite() を使用しています。ここにスクリプトがあります:

<?php

error_reporting(E_ALL ^ E_NOTICE);

$filename = 'Report.txt';


$batch_id = $_GET['batch_id'];
$status = $_GET['status'];
$phone_number = $_GET['phone_number'];

//check to see if I could open the report.txt
    if (!$handle = fopen($filename, 'a')) {
         echo "Cannot open file ($filename)";
         exit;
    }

    // I am trying to write each variables to the text file
    if (fwrite($handle, $phone_number) === FALSE) {
        echo "Cannot write to file ($filename)";
        exit;
    }

    echo "Success, wrote ($phone_number) to file ($filename)";

    fclose($handle);


?>

ここに2つの問題があります:

1.Batch_ID でレポートを受け取るので、各レポート テキスト ファイルに、batch_ID を使用したプレフィックスを付けたいと思います (例: 5626_Report.txt)。

2.関数 fwrite() に複数の変数を渡したい。各 $phone_number の次に $status を書きたい。

4

2 に答える 2

4

fprintf を試してください。

これは C の通常の printf に似ていますが、ハンドルを渡す必要があります。例として:

fprintf($handle, "%s;%s;%s", $batch_id, $status, $phone_number);

または、PHP のインライン文字列を利用して、次を使用することもできます。

fwrite($handle "$batch_id;$status;$phone_number");

正確な問題に到達するには:

$filename = $batch_id."_report.txt";
$handle = fopen($filename, "a");
fwrite($handle, "$phone_number $status");

それは役立つはずです。

于 2012-10-31T21:17:00.527 に答える
0

もっと簡単にできます:

$status = $_GET['status'];
$phone_number = $_GET['phone_number'];

$file = $_GET['batch_id']."_Report.txt";
//place here whatever you need
$content = "Some content".$status."\n";
file_put_contents($file, $current);
于 2012-10-31T21:20:52.197 に答える