Я должен использовать Функция PHP pack () сделать что-то в моих кодах. Но когда я делаю это внутри класса, я получаю ошибки ниже. Принимая во внимание, что если я использую это обычно (без использования в классе), это работает без любой ошибки.
class encryption
{
$my_key = pack('H*', "123456");
}
и это ошибка:
Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in ...
Также, если я использую public
за $my_key
Я получу новую ошибку.
class encryption
{
public $my_key = pack('H*', "123456");
}
Ошибка:
Parse error: syntax error, unexpected '(', expecting ',' or ';' in ...
Что не так в моих кодах?
При определении переменной для класса вне функции вы не можете использовать другую функцию для ее определения. Если вам нужно, чтобы это значение было при инициализации, установите значение в функции конструктора. Ваш класс будет выглядеть так:
class encryption
{
public $my_key;
public function __construct() {
$this->my_key = pack('H*', "123456");
}
}
class encryption
{
public $my_key;
public function __construct()
{
$this->my_key = $this->pack('H*', "123456");
// will always be executed when you create an object of this class
}
private function pack($arg1, $arg2)
{
// return something
}
}