Joomla获取/ POST参数忽略字符串中的空格

时间:2015-07-31 08:11:37

标签: php http joomla parameters

我正在使用Joomla 3.4。 我使用标准的Joomla方式来获取GET参数。 让我们假设网址包含 立即登记?公司= 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变量。

2 个答案:

答案 0 :(得分:6)

根据documentation,JInput默认应用“cmd”过滤器,它基本上剥离了不是a-z的东西。

您应该应用所需的过滤器,例如“int”,“string”,“word”,......使用以下语法:

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

大多数过滤器也有一种速记方法,例如以下两行代码是等效的:

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

答案 1 :(得分:2)

更改

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

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

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