ホームページ > バックエンド開発 > PHPチュートリアル > phpはデータを読み取ります

phpはデータを読み取ります

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 13:02:24
オリジナル
956 人が閲覧しました

php 読み取りファイル

1. PHP でファイルを保存する場合、$testfilename2 には実際には一重引用符が必要です。そうしないと、二重引用符を使用するとエラーが報告されます。今後変数を使用するときは、一重引用符をより頻繁に使用する必要があります。

?

?

$testfilename2='D:ProgramFiles2AppServwwwcatch28admintestmethod6.html';//ファイル名は .php や .txt などのテキスト ファイルです

file_put_contents($testfilename,'');



2. mysql_free_result() は更新操作中に呼び出す必要はありません:






mysql_free_result

(PHP 4、PHP 5)

mysql_free_result結果メモリを解放します

説明

bool mysql_free_result ( リソース $result )

mysql_free_result() はすべてのメモリを解放します 結果識別子 result に関連付けられています。

mysql_free_result() は次の場合にのみ呼び出す必要があります。 クエリに使用されるメモリの量が気になる 大きな結果セットを返すすべての関連する結果メモリは、 スクリプトの実行終了時に自動的に解放されます。

パラメータ

?

結果

結果の リソース この結果は、への呼び出しから取得されます。 mysql_query().

戻り値

成功した場合は TRUE を返し、失敗した場合は FALSE を返します。

非リソースが 結果 に使用されている場合、 E_WARNING レベルのエラーが発生することに注意してください。 mysql_query()リソース のみを返します SELECT、SHOW、EXPLAIN、DESCRIBE クエリの場合。

?

例 #1 A mysql_free_result() の例

<コード><スパンスタイル="color: #000000;"> $result?=?mysql_query("SELECT?id,email?FROM?people?WHERE?id?=?'42'");
if?(!
$result)?{
????echo?
'Could?not?run?query:?'?.?mysql_error();
????exit;
}
/*?Use?the?result,?assuming?we're?done?with?it?afterwards?*/
$row?=?mysql_fetch_assoc($result);

/*?Now?we?free?up?the?result?and?continue?on?with?our?script?*/
mysql_free_result($result);

echo?
$row['id'];
echo?
$row['email'];
?> $result?

=?mysql_query("SELECT?id,email?FROM?people?WHERE?id ?=?'42'"
);

if?(!

$result
)?{

????echo?'Could?not?run?query:? '?.?mysql_error ();????exit;}

/*?結果を使用します。完了?with?it?afterwards?*/$row?=?mysql_fetch_assoc($result );/*?今?解放?結果は?そして?続行? with?スクリプト?*/mysql_free_result($result);echo?$row['id'];echo?$row[ 'メール']; ?> メモ 注: 下位互換性のために、次のとおりです。 非推奨のエイリアスを使用できます。 mysql_freeresult()

こちらもご覧ください

?

  • mysql_query() - MySQL クエリを送信します
  • is_resource() - 変数がリソースかどうかを調べます




使用する必要がある場合は? mysql_free_result() の場合、このエラーが発生した可能性があります。何が原因で、どうすれば修正できますか?

まず、mysql_free_result() とは何ですか?作るときは 大量のデータセットを返す mySQL データベースクエリでは、次のような問題が発生する可能性があります。 これらの結果が大量のデータを消費するため、サーバーがダウンしてしまう可能性があります。 メモリ。トラフィックの多いサイトでは、実際にサーバーがクラッシュする可能性があります。 そうした結果がどんどん積み重なっていきます。したがって、mysql_free_result() は、クエリの結果を解放する組み込みの PHP 関数です。 メモリ。繰り返しますが、これは通常、戻ってこない限り大した問題ではありません クエリから大規模なデータ セットを取得しますが、常に次のことを行うことをお勧めします。 結果をクリアし、サーバー上のメモリを解放します。ここにあります PHP コードの例:

?

?

//...CONNECT TO DATABASE...

$query = "SELECT * FROM employees WHERE age >= 30";
if ($result = mysql_query($query)) {
	while ($row = mysql_fetch_array($result)) {
		//...DO SOMETHING HERE...
	}
	mysql_free_result($result); //free the query results from memory
}

///...CLOSE YOUR DATABSE CONNECTION...
ログイン後にコピー
ただし、サーバーで厳密な PHP 警告が有効になっている場合は、 クエリの一部 (すべてではありません) に対して上記の警告が表示され始めます。 この問題を追跡するのに非常に苦労しましたが、最終的には ここで見つけました。 mysql_free_result() のみを使用します 次のクエリ タイプの場合: SELECT、SHOW、EXPLAIN、DESCRIBE。 それで、 UPDATE クエリを実行すると、有効なリソースが返されず、 mysql_free_result() を呼び出すと警告がスローされます。 当然です。
関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート