Php 在课堂上使用$\u GET

Php 在课堂上使用$\u GET,php,class,oop,Php,Class,Oop,我自己一点一点地学习PHP OOP 我不能让它按我想要的方式工作,我要做的是: 我认为这很基本。。但是我自己无法解决这个问题。。屏幕只是空白,没有错误,没有显示任何内容。所以我找不到解决办法 谢谢您可以通过类中的构造函数传递$\u GET: Class GetClass { public $action; public function __construct($get){ $this->action = isset($get['action']) ? $get['a

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

我不能让它按我想要的方式工作,我要做的是:

我认为这很基本。。但是我自己无法解决这个问题。。屏幕只是空白,没有错误,没有显示任何内容。所以我找不到解决办法


谢谢

您可以通过类中的构造函数传递
$\u 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);
换线就行了

 $this->Select($action);

同时,您还在
if
条件中分配了不比较的值

if ($action = 'delete') //assignment operator =
应该是

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


如果($action='delete'){
你需要在这里使用double
=
,我也会把它变成一个常量,即
strtolower
strtouper
@ᵈˑThx没有注意到单一的
=
Thx,而==不是一个错误,而是当我快速写下所有东西时…工作完美,这是一个愚蠢的错误!如果你得到一个白色屏幕,启用详细的错误报告。
错误报告(E_ALL);ini_set('display_errors',1)
-显然不是在您的生产环境中…哦,天哪,这是explendid。谢谢
if ($action = 'delete') //assignment operator =
if ($action == 'delete') //comparison operator ==