-1

異なる PHP ファイルで同じ PHP スニペットを繰り返す方法は? たとえば、変数 を定義して$userから、この変数にアクセスできる PHP コードを挿入します。 更新: これを if ステートメントで使用します

例 (if ステートメントなし):

    function sanitizeString($var)
    {
    $var = htmlentities($var, ENT_QUOTES, "UTF-8");
    return mysql_real_escape_string($var);
    }
    $user = sanitizeString($_POST['user']);
    $pass = sanitizeString($_POST['pass']);
    //code i want to repeat in different files
    $user=$user;
    $pass=$pass;
    #salt generation
    $salt=uniqid(mt_rand(), true);
    #Add data to tables
    queryMysql("INSERT INTO accounts VALUES('$user', '".hash('sha512',$pass+$salt)."', '$salt', '$cookie_value')");
    mysql_query("INSERT INTO passwordreset VALUES('$user', NULL, NULL)");
    //end of code to repeat
4

4 に答える 4

2

パラメータを使用して関数を使用します。それが目的です。さまざまな変数を使用して、さまざまなコンテキストで再利用できるコードのスニペット。

于 2012-07-17T06:40:52.110 に答える
1

クラスとメソッドを作る

class User
{
   public $user;
   public function User($name)
   {
      $user = $name;
   }
}

$User = new User('name1');
echo $User->user;
$User = new User('name2');
echo $User->user;
$User = new User('name3');
echo $User->user;
$User = new User('name4');
echo $User->user;

出力: name1name2name3name4

于 2012-07-17T06:42:53.673 に答える
0

U コードまたは変数を 1 つの php ファイルに追加して、そのファイルを好きな場所に含めることができますここで例を見ることができます

于 2012-07-17T06:46:51.743 に答える
-1

(この場合は必要ないため、global キーワードを削除しました)

1 つの方法は、$GLOBALS 変数を使用することです。これは、$_SERVER、$_POST などのようにどこからでもアクセスできます。 Superglobals を参照してください。Deceze が述べたように、グローバル変数は通常、偶発的なエラーを引き起こしやすいため、最適なソリューションではありません。詳細については、こちらをお読みください

$GLOBALS['user'] = "RadGH";
include "my_file.php";

my_file.php:

echo $GLOBALS['user'];

Bondeye さんからのコメントによると、変更する必要のないデータを扱う場合は、定数を使用することをお勧めします。グローバルの問題の 1 つは、どこかでデータが誤って変更または参照される可能性があることです。定数は変更できないため、そうではありません。

define('USER', 'RadGH');
include "my_file.php";

my_file.php:

echo USER;
于 2012-07-17T06:46:41.717 に答える