我正在使用Crackstation.net的PHP源代碼進行散列+ salting密碼。PHP類 - 無法聲明一個
https://crackstation.net/hashing-security.htm#phpsourcecode
我試圖把這個代碼在一個類中,以方便使用。
我想我可以用代碼頂部額外的一行「class PasswordHasher {」和一個不錯的右括號。
<?php
class PasswordHasher{
// These constants may be changed without breaking existing hashes.
define("PBKDF2_HASH_ALGORITHM", "sha256");
define("PBKDF2_ITERATIONS", 1000);
define("PBKDF2_SALT_BYTE_SIZE", 24);
define("PBKDF2_HASH_BYTE_SIZE", 24);
define("HASH_SECTIONS", 4);
define("HASH_ALGORITHM_INDEX", 0);
define("HASH_ITERATION_INDEX", 1);
define("HASH_SALT_INDEX", 2);
define("HASH_PBKDF2_INDEX", 3);
//all functions from the URL source
}
?>
由於某些原因,Netbeans不希望我在類中使用define關鍵字。如果我將所有定義的行放在類刪除之上,我不會從Netbeans得到任何語法錯誤。我對PHP很新,而且我找不到這種行爲的原因。我做錯了什麼,以及如何將此源代碼轉換爲面向面向對象編程的類?
您正在尋找類'const'ants。 [Here](http://www.php.net/manual/en/language.oop5.constants.php) –
其實,只是看着'Crackstation'代碼。它使用在類之外定義的常量。所以你唯一的選擇就是把他們留在那裏。 –
請閱讀精美的手冊 –