ホームページ >バックエンド開発 >PHPチュートリアル >PHPの基礎知識(1) - マジックリファレンス

PHPの基礎知識(1) - マジックリファレンス

WBOY
WBOYオリジナル
2016-06-13 13:16:311111ブラウズ

phpの基礎知識(1)~マジッククォート
PHP の基礎知識 - マジック リファレンス

サンプル コード ダウンロード ページ http://xieye.iteye.com/blog/1336095 (添付ファイル内)

マジック リファレンスの内容: サーバーが自動的に実行します一部の文字の自動処理 プログラマーの練習を容易にする変換。

出典: 当初、プログラマがフォーム データをデータベースに追加しやすくするために、PHP の設計者は、オプションがオンになっている場合にマジック リファレンスが有効になる設定を追加しました。オプションがオフの場合、マジックリファレンスは有効になりません。

php.ini は約 441 行です
magic_quotes_gpc = Off
コメントは次のとおりです。
コメントは、受信する GET/POST/Cookie データを引用符で囲むことを示します。サーバーに入る get/ に影響します。Post/Cookie データは自動的に変換されます。

1) addslashes 関数
マジッククオートを導入する前に、まず addslashes 関数を導入します。

この関数は文字列を返します。この関数は、データベース クエリ ステートメントなどの特定の文字の前に追加されます。バックスラッシュが追加されました。 。これらの文字は、一重引用符 (')、二重引用符 (")、バックスラッシュ ()、および NUL (NULL 文字) です。

addslashes() の使用例は、データベースにデータを入力する場合です。たとえば、O'reilly という名前をデータベースに挿入するには、エスケープ文字を使用する必要があります: O'reilly を使用して、追加の を挿入せずにデータをデータベースに挿入します。PHP ディレクティブが on に設定されている場合、これは ' を意味します。 '

を挿入するとエスケープされます。デフォルトでは、PHP ディレクティブ magic_quotes_gpc がオンになっており、主にすべての GET、POST、COOKIE データに使用されます。これは二重レベルのエスケープを引き起こすため、関数 get_magic_quotes_gpc() を使用して、🎜>例 1.addlashes() の例
http://localhost/command/peixun/ を使用できます。 magicquote/1.php


<?php
$str = "Is your name O'reilly?";

// 输出:Is your name O\'reilly?
echo addslashes($str);
2) 設定オプション magic_quotes_gpc
をテストします。まず、magic_quotes_gpc = On であることを確認します。off または 0 の場合は、変更して Apache を再起動する必要があります。サーバー
http://localhost/command/peixun/magicquote/2.php


次に、magic_quotes_gpc = を変更して、Apache サーバーを再起動し、プログラムを再度テストします。 🎜>最後に、これらは概念を学習するためのものです。ほとんどの実際のアプリケーションでは、マジック参照はオフになり、手動で変換されます。
<?php

require_once('Public/CommandLine.php');

$isget = ($_SERVER['REQUEST_METHOD'] == 'GET') ? 1 : 0;
if ($isget) {
    $html = <<<longs
<html>    
<body>
  <form method="post">
    请输入字符:<input type="text" name="name1" value=''>
    
  </form>
</body>
</html>    
longs;
    echo $html;
    
} else {
    echo $_POST['name1'];
    
}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。