Есть один класс и две функции внутри него. Во второй функции нужно значение переменной, которая получается из функции №1.
class A {
function first {
**$result**
}
function second {
$arr [
'fruit' => $result,
'vegetable' => 'potato'
];
}
}
Подскажите, пожалуйста, каков может быть наиболее эффективный способ решения этой задачи? Перепробовал множество различных вариантов, но что-то ничего не выходит...
Конкретный код, с которым работаю:
class Auth
{
public $url = "https://ддддддддддд/auth/login/";
public $url2 = "https://auth.ооооооооо/billing/id/";
public $credentials = [
'user_name' => 'вававава',
'user_pass' => 'вавававава',
'product_code' => 'вавава'
];
public function moveaway()
{
$access = json_encode($this->credentials);
$getting = curl_init($this->url);
curl_setopt($getting, CURLOPT_POST, 1);
curl_setopt($getting, CURLOPT_POSTFIELDS, $access);
curl_setopt($getting, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($getting, CURLOPT_SSL_VERIFYPEER, false);
$output = curl_exec($getting);
curl_close($getting);
$decode = json_decode($output, true);
$sidfinal = $decode['data']['SID'];
global $sidfinal;
}
public function cid()
{
echo self::$sidfinal;
$second = [
'sid' => $sidfinal,
'ogrn' => 1071650001796
];
$injson = json_encode($this->second);
$nextstep = curl_init($this->url2);
curl_setopt($nextstep, CURLOPT_POST, 1);
curl_setopt($nextstep, CURLOPT_POSTFIELDS, $injson);
curl_setopt($nextstep, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($nextstep, CURLOPT_SSL_VERIFYPEER, false);
$output2 = curl_exec($nextstep);
curl_close($nextstep);
echo $output2;
}
}
$h = new Auth();
$h->moveaway();
$h->cid();
Функции могут возвращать значения и принимать аргументы.
Вероятно, в вашем случае это и есть «самый оптимальный способ».
class Auth {
public function moveaway()
{
// ...
$sidfinal = $decode['data']['SID'];
return $sidfinal;
}
public function cid($sid)
{
$second = [
'sid' => $sid,
'ogrn' => 1071650001796
];
// ...
}
}
$h = new Auth();
$sid = $h->moveaway();
$h->cid($sid);
Второй вариант, сохранить нужную переменную в свойство экземпляра класса:
class Auth {
private $sid;
public function moveaway()
{
// ...
$this->sid = $decode['data']['SID'];
}
public function cid()
{
$second = [
'sid' => $this->sid,
'ogrn' => 1071650001796
];
// ...
}
}
$h = new Auth();
$h->moveaway();
$h->cid();
У меня есть некий кошелек, в котором пока что есть только монетки и ключи для сундуковНа данный момент player выглядит вот так:
Собственно вопрос в тайтлеЧто я хочу: единый формат ответов от API как у VK