一个类可以包含有属于自己的常量变量(称为“属性”)以及函数(称为“方法”)。

$ 变量--专业术语上称它为“属性”。  
function 函数--专业术语中称它为“方法”。

如果直接使用 var 声明属性,而没有用 publicprotected 或 private 之一,PHP 5 会将其视为 public

1.类定义

<?php
class my_Class
{
// 声明属性
public $var = 'a default value';//公共 //声明方法
public function displayVar() {
echo $this->var;//方法在类定义内部被调用时,可用的伪变量 $this;            //$this 是一个到主叫对象的引用(通常是该方法所从属的对象,但如果是从第二个对象静态调用时也可能是另一个对象)
}
}
?>

用 new 关键字,创建一个类的实例

2.创建一个实例

<?php

$instance = new SimpleClass();//对象引用
// 也可以这样做:

$className = 'Foo';

$instance = new $className(); // Foo()

?>

1. ::(双冒号): 静态属性  self::$property

该运算符是调用一个类中的静态成员的方法

 class my_class{

    protected static $instance;

    self::$instance="jh2k";

    或 $this::$instance = "jh2k";

}

2. ->(对象运算符):$this->property(其中 property 是该属性名)这种方式来访问非静态属性。

该操作符是操作一个类中的成员变量的方法,可以是非static成员变量

class my_class{

  private $test;

  $this->test="jh2k";

}

class my_class{

  var $username = "jh2k"; //公共变量

  function show_username()  
  {  
  echo $this->username;  //$this :访问一个公共的变量,或者类里面的函数;用来说明username是公共的。可以访问的,函数外部的东西
  }

  function Welcome()  
  {  
  echo "欢迎";  
  $this->show_username();  //$this:调用 show_username 这个函数,用 $this 来表示这个函数在类中并且和 Welcome 函数平行,而不是在其他地方(比如Welcome函数中)
  }

}

$Name = new my_class();

$Name->show_username(); //jh2k

$Name->username = "jh2k15";

$Name->show_username(); //jh2k15

$Name->Welcome(); //欢迎jh2k15

随机推荐

  1. Atitit 软件国际化原理与概论

    Atitit 软件国际化原理与概论 语言和文化习俗因地域不同而差别很大.对某一特定的地域的 语言环境称为"locale".它不仅包括语言和货币单位,而且还包括 数字标示格式, 日期 ...

  2. UI篇(初识君面)

    我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...

  3. android MVP设计模式!

    实现原理: MainActivity 用来更新UI,和显示业务逻辑的结果! LoginPresenterCompl 用来处理 业务逻辑 ILoginPresenter 业务处理类抽象出来的接口 ILo ...

  4. MyBatis中jdbcType和javaType的映射关系

    JDBC Type Java Type CHAR String VARCHAR String LONGVARCHAR String NUMERIC java.math.BigDecimal DECIM ...

  5. freeswitch嵌入python脚本

    操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 python版本:2.7.9 开启python模块 安装python lib库 apt-get install pyt ...

  6. Java 异常处理

    异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error:如果你用System.out ...

  7. [笔记]过期的UBUNTU怎么更新软件包

    使用old-releases仓库替换main/security仓库,就像下面这样. sudo sed -i -r 's/([a-z]{2}\.)?archive.ubuntu.com/old-rele ...

  8. 从一道面试题来认识java类加载时机与过程

    说明:本文的内容是看了<深入理解Java虚拟机:JVM高级特性与最佳实践>后为加印象和理解,便记录了重要的内容. 1  开门见山 以前曾经看到过一个java的面试题,当时觉得此题很简单,可 ...

  9. NRF24L01 无线模块的使用

    NRF24L01 是一款工作在2.4-2.5GHz通用ISM频段的单片收发芯片 工作电压:1.9-3.6V低电压工作 高速率:2Mbps,由于空中传输时间很短,极大的降低了无线传输中的碰撞现象 多频点 ...

  10. SCNU 2015ACM新生赛初赛【1006. 3D打印】解题报告

            题目链接详见SCNU 2015新生网络赛 1006. 3D打印 .出题思路来自codevs 3288. 积木大赛,属于模拟题.         首先我们把“选择从第L部分到第R部分”理 ...