Как отправить опубликованные данные в качестве параметра в метод класса в Slim Framwork

Это мой класс:

class Order {

public function insert($data)
{
...
}
}

Я опубликовал данные и хочу отправить их в мой метод, который находится в классе:

$app->post('/insert-order', '\Order:insert');

Я пытаюсь сделать это работает, как этот пример:

$app->post('/insert-order', function() use ($app) {

$req = $app->request();

die(var_dump($req->post()));
});

В этом случае, когда у меня нет класса, прекрасно работает. Спасибо!

1

Решение

Вы можете добиться этого, отметив $app как глобальный внутри вашего класса.

class Order {
public function insert()
{
global $app;
var_dump($app->request->post());
}
}

Использование глобалов обычно считается дурной привычкой. Еще один способ сделать то же самое ниже.

class Order {
public function insert($data)
{
var_dump($data);
}
}

$app = new \Slim\Slim();
$app->post("/insert-order", function() use ($app) {
$order = new Order();
$data = $app->request->post();
$order->insert($data);
});

$app->run();
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]