2016-04-29 4 views
5

私はいくつかの機能では、彼らはのようなコードを使用することを、いくつかのプレミアムプラグインを使用して、そして私が見つけた自分のコードを分析しています。

このコードはどれくらい安全ですか?私はこれについてPHP Manualにガイダンスを見出そうとしましたが、私が見ているものの、これまでに$ outputと$ some_strの両方について定義していました。

この$出力変数は、後でHTMLコードをエコーするために使用されます。

これに関する仕様はありますか?おそらく、私はこれらのプラグインの外でこのコードをより安全にするために何かできることがありますか?初期化されていないすべての変数に定義されているデフォルト値

ありがとうございました!

+1

"安全"の定義は何ですか?暗黙のNULL値および通知/警告(またはそのログエントリ)以外に、スクリプト言語は、例えば、ヌルポインタエラー。 http://php.net/manual/en/language.variables.basics.php#example-112 btwのcoverdです。 – mario

+0

@marioは、たとえば、この変数が後で生成するこのHTMLコードに、意図的に配置されていないものが含まれていたとします。 –

+1

あなたが注意しなければならないケースは、初期化されていない*変数を持つものではありません。それらはどんな害もしません。プラグインやテーマの場合、継承された*変数を誤って再利用する可能性があります。共有(グローバル)変数スコープから取得します。意図しない出力などを引き起こす可能性があります。 – mario

答えて

7

PHPがE_NOTICEを発行するのは悪い習慣です(エラー報告を有効にした場合)。

つまり、PHP変数は常に自動的に初期化されるため、悪影響はありません。

関連する問題