crontab 是控制器名称,realTimeDeliveryReport 是我们调用的方法。所以我们以上述格式传递参数。
我们如何在这个函数中获取这个参数值?或者我怎样才能传递像 url?externalId=14133337681891060 这样的参数?
在这里,URL 就像一个回调 URL。所以另一台服务器正在附加这样的参数..所以我需要解决方案..
crontab 是控制器名称,realTimeDeliveryReport 是我们调用的方法。所以我们以上述格式传递参数。
我们如何在这个函数中获取这个参数值?或者我怎样才能传递像 url?externalId=14133337681891060 这样的参数?
在这里,URL 就像一个回调 URL。所以另一台服务器正在附加这样的参数..所以我需要解决方案..
使用Code Igniter 输入库,您应该能够使用$this->input->get('keyName')
Code Igniter 消除了 GET 数组,但它仍然在内部存储它,因此您可以使用输入库访问值。
另一个选项是在您的配置文件中设置$config['allow_get_array'] = true;
这将允许您使用$_GET['keyName']
. 您可能还需要设置此配置值才能使用上述输入库函数。
我不确定这是否是你想要的..
尝试
$_GET['externalid']
$_GET['deliveredTS']
$_GET['status']
等等...
更新
尝试这个
功能实时交付报告(){
if($_GET['externalID'] != "") {
$this->User_model->realTimeDeliveryReport();
}
}
当您使用该网址时,参数将保存在 $_GET 变量中,您需要在那里搜索,我不确定这是否会有所帮助......但试试看;)
从codeigniter手册:
启用查询字符串
在某些情况下,您可能更喜欢使用查询字符串 URL:
index.php?c=products&m=view&id=345
CodeIgniter 可选地支持此功能,可以在您的 application/config.php 文件中启用。如果你打开你的配置文件,你会看到这些项目:
$config['enable_query_strings'] = FALSE; $config['controller_trigger'] = 'c'; $config['function_trigger'] = 'm';
如果您将“enable_query_strings”更改为 TRUE,此功能将变为活动状态。然后,您的控制器和函数将可以使用您设置为调用控制器和方法的“触发器”字词访问:
index.php?c=控制器&m=方法
请注意:如果您使用查询字符串,则必须构建自己的 URL,而不是使用 URL 帮助程序(以及生成 URL 的其他帮助程序,如一些表单帮助程序),因为它们旨在处理基于分段的 URL。
http://ellislab.com/codeigniter/user_guide/general/urls.html
函数 realTimeDeliveryReport($externalId,$deliveredTS,$status,$cause,$phoneNo){
echo "$externalId,$deliveredTS,$status,$cause,$phoneNo";
}
试试看发送参数
“/Player/edit_user?id=$row->id?”
在控制器中尝试
$id = $this->input->get('id');