Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF][SF2][Symfony2] Command - przekazywanie danych strony do metody execute, Jak przekazywać dane ze strony www do metody klasy Command
damianooo
post
Post #1





Grupa: Zarejestrowani
Postów: 496
Pomógł: 2
Dołączył: 15.07.2011
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Mam klasę Command, którą będzie uruchamiał CRON na serwerze produkcyjnym.
W klasie Command mam metodę execute w której mam odpowiednie zadania do zrealizowania.
Jak przekazać do metody execute parametry z mojej aplikacji WWW ?
Wiem że metoda execute przyjmuje dwa parametry input i output - rozumiem że to z nich trzeba skorzystać tylko nie wiem za bardzo jak.

Przykładowo w aplikacji na głównej stronie mam wyświetlaną datę i jakieś ID/Numer - wartości obu parametrów będą się zmieniać.
I teraz chciałbym te parametry przekazać do metody klasy Command , która wykonuje zadania za pomocą CRONa.

Jak pobrać te dane (data,numer) ze strony i przekazać je jako parametry do metody execute klasy Command ?
A może nie tak to się robi ?

Ten post edytował damianooo 18.11.2017, 12:53:35
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mcmaroon
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 5
Dołączył: 30.11.2016

Ostrzeżenie: (0%)
-----


Twoja klasa zamiast
  1. use Symfony\Component\Console\Command\Command;

może też dziedziczyć np
  1. use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand;

czyli
  1. class JakasNazwaCommand extends ContainerAwareCommand

i w tym momencie możesz w execute dać np taki zestaw który umożliwi Tobie pobranie danych z bazy lub konfiguracji yml
  1. $this->container = $this->getContainer();
  2. $this->doctrine = $this->container->get('doctrine');
  3. $this->em = $this->doctrine->getManager();
  4. $this->em->getConnection()->getConfiguration()->setSQLLogger(null);

przykładowo
  1. $this->container->getParameter('database_name');


Możesz też w metodzie configure użyć addArgument lub addOption i posyłać parametry bezpośrednio przez zadanie cron ale to raczej nie wchodzi w grę.

Ten post edytował mcmaroon 18.11.2017, 23:40:58
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 15:39