消息:未定义的属性:Todo :: $ uri

时间:2019-07-15 17:39:54

标签: php codeigniter

我使用codeigniter。

当我尝试在url中获取参数时出现错误

<?php

class Todo extends CI_Controller{
public function __construct() {
    parent::__construct();



}

public function index(){
$this->load->view('index.php');

}
public function blog(){
$this->load->view('arsiv');

}
public function test($param){
    $this->load->view('test');
    $a =  $this->uri->segment(2);


}
}

当我尝试去的时候:http://localhost/cod/index.php/todo/test/123

  

遇到PHP错误
  严重性:通知
  消息:未定义的属性:Todo :: $ uri
  文件名:controllers / Todo.php
  行号:21
  回溯:
  文件:/opt/lampp/htdocs/cod/application/controllers/Todo.php
  线:21
  函数:_error_handler
  文件:/opt/lampp/htdocs/cod/index.php
  线:315
  功能:require_once

     

遇到未捕获的异常
  类型:错误
  消息:在null上调用成员函数segment()
  文件名:/opt/lampp/htdocs/cod/application/controllers/Todo.php
  行号:21
  回溯:
  文件:/opt/lampp/htdocs/cod/index.php
  线:315
  功能:require_once

3 个答案:

答案 0 :(得分:0)

请确认您的配置功能中启用了URL帮助程序

尝试使用$ this-> uri-> get_segment(1);

尝试使用

$CI =& get_instance(); 
$this->CI->uri->segment('2')

答案 1 :(得分:0)

尝试使用

config文件夹中的codigniter autoload.php文件

date

阅读https://www.codeigniter.com/user_guide/libraries/uri.html

答案 2 :(得分:0)

您必须在config文件夹的codigniter autoload.php文件中加载帮助程序

$autoload['helper'] = array('url');