get_magic_quotes_gpc

(PHP 4, PHP 5, PHP 7)

get_magic_quotes_gpcmagic_quotes_gpc の現在の設定を得る

説明

get_magic_quotes_gpc ( void ) : bool

magic_quotes_gpc の現在の設定を返します。

実行時に magic_quotes_gpc をセットしようとしても反映されないことに留意してください。

magic_quotes についての詳細な情報は セキュリティの欄 を参照してください。

返り値

magic_quotes_gpc がオフの場合に 0、そうでない場合に 1 を返します。 PHP 5.4.0 以降は、常に FALSE を返します。

変更履歴

バージョン 説明
5.4.0 マジッククォート機能は削除され、常に FALSE 返すようになりました。

例1 get_magic_quotes_gpc() の例

<?php
echo get_magic_quotes_gpc();         // 1
echo $_POST['lastname'];             // O\'reilly
echo addslashes($_POST['lastname']); // O\\\'reilly

if (get_magic_quotes_gpc()) {
    
$lastname stripslashes($_POST['lastname']);
}
else {
    
$lastname $_POST['lastname'];
}

// MySQL を使っている場合
$lastname mysql_real_escape_string($lastname);

echo 
$lastname// O\'reilly
$sql "INSERT INTO lastnames (lastname) VALUES ('$lastname')";
?>

注意

注意:

magic_quotes_sybase ディレクティブがONの場合、magic_quotes_gpcは 完全に上書きされます。そのためget_magic_quotes_gpc()TRUEを返したとしてもダブルクォーテーションやバックスラッシュ、 NULLはエスケープされません。シングルクォーテーションだけがエスケープ されます。そのケースでは''のように見えます。

参考