Joomla Get/POST 参数忽略字符串中的白色 space

Joomla Get/POST parameters ignoring white space in string

我正在使用 Joomla 3.4。 我正在使用标准的 Joomla 方式来获取参数。 让我们假设 url 包含 signup?company=ZITO%20MEDIA,%20LP

根据 Joomla 标准代码

$config = new JConfig();
$jinput = JFactory::getApplication()->input;
echo $jinput->get->get('company');

结果:ZITOMEDIALP

但如果我将代码更改为标准 php 代码

echo $_GET['company'];

结果:ZITO MEDIA,LP

我想使用 joomla 代码,因为我在做 joomla 项目,但这不是我想要的。

有什么想法吗? POST 变量也是如此。

改变

$jinput = JFactory::getApplication()->input;
echo $jinput->get->get('company');

$jinput = JFactory::getApplication()->input;
echo $jinput->getString('company', 'default_value');

也使用默认值,以便能够处理缺少参数的情况。

根据 documentation,JInput 默认应用 "cmd" 过滤器,该过滤器基本上会去除非 a-z 的内容。

您应该应用所需的过滤器,例如"int"、"string"、"word"、……语法如下:

$jinput->get('varname', 'default_value', 'filtername'); 

对于大多数过滤器还有一个shorthand方法,例如下面两行代码是等价的:

$jinput->get('varname', 'default_value', 'string');
$jinput->getString('varname', 'default_value');