ホームページ >バックエンド開発 >PHPチュートリアル >PHP の素晴らしい使い方の抜粋
PHP 引用符の素晴らしい使い方
記事: http://bardo.iteye.com/admin/blogs/848136? で、引用とは何かについて詳しく説明しました。ここでは、引用の素晴らしい使い方について説明します。
1. パラメーターの参照渡しには 2 つの機能があります。まず、外部変数を関数内の変数と同期して変更できます。次に、リターンなしで複数のパラメータを返すことができます。
2. 大規模なデータ構造の場合は、コピーを減らし、メモリ消費を削減します。
これは一般的な使用法です。引用実は、誰もが知らない素晴らしい使い方がいくつかあります。今見つけたところです:
?
ファイルにコードがある場合、それを SHELL 状態で使用する場合:
$host=$_SERVER['HTTP_HOST'];
通知情報がログに表示されます。もちろん、オフにしたからといって、そのようなことが起こらなくなるわけではありません。ただし、Web ページと SHELL の両方を使用できるようにするには、次の作業を行う必要があります:
1 つ:
これをオフにするには、error_reporting(245) を使用します。
2 番目に、それが表示されないようにする:
$host=@$_SERVER['HTTP_HOST'];
3 番目に、三項演算子を使用します。
$host=(isset($_SERVER['HTTP_HOST']))?$_SERVER['HTTP_HOST']:'';
?
しかし、これらは一般的な方法です。
実は、通知情報が表示されないようにする方法もあります:
?
$host=& $_SERVER['HTTP_HOST'];
?
このようにして、パラメーターを渡すときに isset または @
が使用されないことが保証されます。?
変数が実際に使用される場合にのみ isset を使用します。これにより、コード文字数が削減されるだけでなく、作業効率も向上します。
?
それでは、次のコードがこのように実行されるかどうかを確認してみましょう。
?
error_reporting(E_ALL); $ar=array(); $b=& $ar['test'] ; //你可以把前面的方法在这一行都试一下 $c='23' . $b .'31'; echo($c);
?
? もちろん、参照を使用するときに注意すべき最大のことは、使用中に変更できないようにする必要があることです。それ以外の場合、元の変数を同期的に変更するには、事前にそれを予測する必要があります。
?
したがって、予測できない場合でも、@
を使用してください。?