En Joomla! 2.5.x Podría simplemente ejecutar, JRequest::get('post');pero ya que JRequestestá en desuso en Joomla! 3.x debería usar JInput.
En este momento, este es el código que estoy usando para obtener todo $_POST:
$app = JFactory::getApplication();
$postData = $app->input->getArray(array_flip(array_keys($_POST)));
Pero esto parece bastante engorroso y me encuentro con problemas si se usa junto con $app->input->set();creo que habría una mejor manera.
Al buscar esto antes, he encontrado personas que dicen que simplemente puedes ejecutar
$app = JFactory::getApplication();
$postData = $app->input->post;
Pero cuando probé esto, simplemente obtuve una instancia del JInputobjeto.

Respuestas:
Es el camino a seguir, obtendrá un objeto JInput y puede usarlo como JRequest
El filtro podría ser 'int', 'cmd' o muchos otros; la lista completa se puede encontrar en esta función: https://github.com/joomla/joomla-cms/blob/a3df15f1ddad6d9051d53f939b6afd2f5fca60b7/libraries/joomla/filter/input .php # L138
Si solo desea la matriz, entonces puede hacer
Pero debe evitar este estilo de acceder a los datos del usuario sin filtrar.
fuente
$_POSTsin saber realmente los nombres de los vars que necesito obtener, es por eso que usar elJInputobjeto así no es útil en muchos casos. Sin embargo, sigue siendo una buena respuesta.$app->input->post->getArray();solo es válido en Joomla 3.2.0 y posterior. Y en cualquier versión anterior (incluida la 2.5) debe usar$app->input->getArray($_POST)Parece que otra forma de lograr esto es simplemente pasar una matriz vacía:
Esto recuperará todo en la
JInputvar de datos como si estuvieras accediendo al$_REQUESTsuper.Esto no funciona en Joomla! Versión 2.5.x de
JInputaunque.fuente
Espero que esto funcione
JRequest :: get ('post');
Esto lo ayudará a obtener los datos del equivalente de $ _POST en PHP.
fuente