Jebanany | 2018-06-21 11:54:24 UTC | #1
Warto już na samym początku pracy ułatwić ją sobie poprzez stworzenie konfiguracji do naszego skryptu. Podobnie jak framework ułatwia nam pracę poprzez własne klasy i funkcje, tak samo my ułatwmy ją sobie i zgromadźmy w jednym miejscu dane na temat logowania się do naszego serwera, informacji na temat portów, adresów IP, itp. Pamiętajmy, że korzystamy ze składni języka PHP.
Możemy skorzystać z prostego stworzenia tablicy konfiguracji np:
(więcej o tablicach przeczytacie w http://php.net/manual/en/language.types.array.php)
$config = array(
'password' => 'mypassword',
'user' => 'myusers'
);
// nawias kwadratowy automatycznie przekształca zmienną w tablicę
// warto jednak na początku pliku dodać
$config = array();
$config['password'] = 'mypassword';
$config['user'] = 'myuser';
Dostęp do takich wartości z obu sposobów wskazanych wyżej uzyskamy w taki sposób:
echo $config['password']; // wyświetli mypassword
echo $config['user']; // wyświetli myuser
Do stworzenia konfiguracji możemy posłużyć się jeszcze funkcją
(więcej o tej funkcji http://php.net/manual/pl/function.define.php)
define()
Tak jak wskazuje jej nazwa służy ona do definiowania stałych (czyli nie zmiennych).
Oto różnice pomiędzy stałymi i zmiennymi, które podaje nam dokumentacja PHP:
Nazwy stałych nie są poprzedzone znakiem dolara ($);
Stałe mogą zostać zdefiniowane jedynie przy użyciu funkcji define() a nie poprzez zwykłe przypisanie;
Stałe mogą być definiowane i używane wszędzie, niezależnie od zasięgu zmiennych;
Stałe nie mogą być zmieniane ani usuwane jeśli raz zostały ustawione ; oraz
Stałe mogą zawierać jedynie wartości skalarne.
Musimy pamiętać, że nie mogą zostać do nich przypisane tablice, a jedynie dane skalarne (boolean, integer, float oraz string).
Przykładowy config.php wyglądałby tak:
define("password", "mypassword");
define("user", "myuser");
Dostęp do takich wartości uzyskamy w taki sposób:
// nie wymaga podawania znaku dolara ($) przed nazwą
echo password; // wyświetli mypassword
echo user; // wyświetli myuser
https://forum.lvlup.pro/t/poradnik-ts3-php-framework-seria-poradnikow-od-podstaw/842