在课堂上使用$ _GET

时间:2015-06-08 12:07:31

标签: php class oop

我自己一点一点地学习PHP OOP ......

我无法按照我想要的方式工作,我正在努力做到这一点:

http://localhost/test/class.php?action=delete

public $action;
public function __construct()
{
        $this->action = isset($_GET['action']) ? $_GET['action'] : null;            
        $this->db = new Db();   
        $this->Select($action);
}

private function Select($action)
{
    if ($action = 'delete') 
    {
            echo "Here";
    }

}

}

我认为这是非常基本的..但我自己无法得到解决方案..屏幕只是空白而没有错误,并且不显示任何内容。所以我无法搜索解决方案......

谢谢

2 个答案:

答案 0 :(得分:2)

您可以在班级的构造函数中传递$_GET

Class GetClass {
  public $action;
  public function __construct($get){
      $this->action = isset($get['action']) ? $get['action'] : null;
      $this->db = new Db();   
      $this->Select($this->action);
  }

  private function Select($action){
    if (strtolower($action) == 'delete') {
      echo "Here";
    }
  }

}

$getClass = new GetClass($_GET);

答案 1 :(得分:1)

只需更改该行。

 $this->Select($action);

 $this->Select($this->action);

并且您还指定不比较if条件

中的值
if ($action = 'delete') //assignment operator =

应该是

if ($action == 'delete') //comparison operator ==
  

当从对象上下文中调用方法时,伪变量$ this可用。 $ this是对调用对象的引用(通常是方法所属的对象,但如果从辅助对象的上下文中静态调用该方法,则可能是另一个对象)。

Check Docs