PHP:类与实例变量

J2D*_*D8T 2 php oop

我知道 Java 和 C# 等编程语言中的类变量和实例变量存在差异,所以我想知道 PHP 是否相同。

所以我知道类变量在该类的所有实例之间共享,而实例变量仅与该类的特定实例相关。

例如:

class db {
  private $host;   <--
  private $user;   <-- These will be treated as instance variables
  private $pass;   <-- as they are set by the class constructor
  private $dbname; <--

  private $connected = false; <-- Will this be treated as a class 
                                  variable? Shared among all the 
                                  instance of the db class?

  public function __construct($host, $user, $pass, $dbname) {
    $this->host = $host;
    $this->user = $user;
    $this->pass = $pass;
    $this->dbname = $dbname;
  }

  public function checkConn() {
    // some code here to change the value of $this->connected
  }
Run Code Online (Sandbox Code Playgroud)

Shi*_*ai7 5

PHP 具有静态类属性。您的代码中没有任何属性被声明为静态,因此它们都是实例属性。