[英]Making PHP Script Automatically write to text file
我正在編寫腳本以嘗試並幫助簡化日常工作。 它可以部分工作,將請求發送到API並接收響應。 然后,我希望它將所說的響應保存在一個文本文件中,該文件將自動通過電子郵件發送到已定義的郵箱。 我一直堅持的一點是,實際上是將腳本保存到文本文件中。
這是我的腳本:(我不是非常有經驗。.包含文件並不相關,因為它們發送請求的API並不包含其他任何內容。)我希望我可以在字面上在底部添加一行SQL連接關閉,告訴它保存到文本文件。 另外,我希望文本文件采用“ $ CorrectCLI”變量的名稱。
任何幫助表示贊賞。 干杯。
// Check connection
if(mysqli_connect_errno()) {
echo "Could Not Connect, Contact Support.";
exit;
} else {
echo "Connected to Database Successfully.<br><br>";
}
//Required Information:
$CorrectCLI = $CLIrow[0];
$CorrectSitename = $SiteNamRow[0];
$CorrectSiteNumber = $SiteNumRow[0];
$CorrectIP = $IProw[0];;
$xrefFromKF = "503269";
echo nl2br("Affected XREF: " . $xrefFromKF . "\n");
$CLIquery = "select primary_cli from customers where xref = " . $xrefFromKF . "";
$CLIresult = mysqli_query($con,$CLIquery);
if(!$CLIresult) {
echo "Could Not Locate CLI In Database.<br>";
}
$CLIrow = mysqli_fetch_row($CLIresult);
$CLI = $CLIrow[0];
echo nl2br("Circuit CLI: 0" . $CLIrow[0] . "<br>");
if(!$CLI > 0 ) {
echo " Could Not Locate CLI.<br>";
}
$IPquery = "select manufacturers_ip_prim from customers where primary_cli = " . $CLIrow[0] . "";
$result = mysqli_query($con,$IPquery);
if(!$result) {
echo "Could Not Locate Management IP.<br>";
}
$IProw = mysqli_fetch_row($result);
$IPcount = $IProw[0];
echo nl2br("Circuit IP: " . $IProw[0] . "");
if(!$IPcount > 0 ) {
echo " Could Not Locate Management IP.<br>";
}
echo nl2br("\n\nPinged " . $IPcount . "...\n");
exec("ping -c 2 " . $IPcount, $output1, $result1);
if ($result1 == 0) {
echo nl2br("Circuit Recovered - Cancelled Diagnostics.");
} else {
echo nl2br("Circuit Down - Starting Diagnostics");
// Perform Sync Check
include '../diags/SyncStatus.php';
// Perform Data Port Reset
include '../diags/DataPortReset.php';
// sleep(10);
echo nl2br("\nPinged " . $IPcount . "...\n");
exec("ping -c 2 " . $IPcount, $output2, $result2);
if ($result2 == 0) {
echo nl2br("Circuit Recovered - Stopping Diagnostics.");
} else {
echo nl2br("Circuit Still Down - Continuing Diagnostics\n\n");
include '../diags/Metascript.php';
include '../diags/TAMtestSubmit.php';
include '../diags/TAMtestRetrieve.php';
echo "<br>";
include '../diags/GetProfile.php';
echo "<br>";
include '../diags/ProfileOverride.php';
echo "<br>";
// sleep(300);
include '../diags/RevertProfile.php';
echo "<br>";
echo nl2br("\nPinged " . $IPcount . "...\n");
exec("ping -c 2 " . $IPcount, $output4, $result4);
//print_r($output4);
if ($result4 == 0) {
echo nl2br("Circuit Recovered - Stopping End Of Diagnostics.");
} else {
echo nl2br("Circuit Still Down - Requires Attention.\n\n");
}
}
}
// Close the Database Connection
$conn->close();
?>
我將使用PHP輸出緩沖區。
將此代碼添加到此PHP腳本的頂部
ob_start("process_output");
function process_output($buffer){
$pageContent = $buffer;
// $pageContent is all the output of your web page,
// put your email logic here
return $pageContent;
}
按照您的邏輯,我會參考http://php.net/manual/en/function.file-put-contents.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.