php类与构造函数解析

关于类大家都有一定的认识这里只介绍在php中类值得注意的地方

----类的创建----

php使用关键字class创建一个类,并且使用一对大括号
如:

class name{
  public $n="";
  private $u="";

  public function name() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;//this表示这个类
  }
}

结尾不打分号。则$n,$u为字段;name()为构造函数(__construct()也可定义构造函数,详见下文),可以为字段赋值;rename()为方法。

----字段----

比较
$obj=new name();
echo $obj->n;

$obj=new name();
echo $obj->u;

前者可执行,后者不可因为$u前声明了私有private。这一点是与c++类似的。

代码:

public static $nm ="2333333333333333" ;

为函数申明了一个静态字段。
通过类名与::可以直接访问该变量

echo name::$nm;

这一点也是与c++类似的。

php中还可以通过 self::+$+变量名 在类中访问静态字段,这时self相当于$this->

方法的使用与字段类似


----构造函数----

在php5和早期版本中构造函数与类同名


在php5和之后的版本中魔术字 __construct() 可定义构造函数

魔术字 __construct() 可定义构造函数

class name{
  public $n="";
  private $u="";

  public function __construct() {
    $n="233";
    $u="23333";
  }

  public function rename($newn){
     $this->n=$newn;
  }
}

构造函数可有参数

__construct($name="",$sex="man",$age=0){}

在申明对象时

$obj= new name("我","man",28);

如果没有给出参数,则默认为=后的值。

 

转自我的个人网站,转载标明出处:http://www.cirno.win/insert/page.php?id=6

转载于:https://www.cnblogs.com/dark-master/p/6368497.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
moodle-mod_hvp(H5P插件)中的classes/framework.php文件是整个插件的核心框架代码文件。下面是代码详解: 1. 首先是命名空间的声明: ```php namespace mod_hvp\classes; ``` 2. 然后是的定义: ```php class framework { ``` 3. 接着是一些常量的定义: ```php const VERSION = '1.0'; const MINIMUM_MOODLE_VERSION = 2016052300; const MINIMUM_PHP_VERSION = 70000; const PLUGIN_BASE = 'mod_hvp'; const PLUGIN_NAME = 'hvp'; const HVP_PLUGIN_NAME = 'hvp'; ``` 这些常量主要是用于指定插件的版本号、需要的最低Moodle版本号、最低PHP版本号以及插件的名称。 4. 然后是一个静态变量的定义: ```php public static $hvp_content = array(); ``` 这个静态变量是用于存储插件中所有的H5P内容。 5. 接下来是一个方法的定义: ```php public static function get_hvp_contents() { return self::$hvp_content; } ``` 这个方法返回了上面定义的静态变量$hvp_content,即插件中所有的H5P内容。 6. 然后是一个构造函数的定义: ```php public function __construct() { global $CFG; $this->mod_hvp_path = $CFG->dirroot . '/mod/hvp'; } ``` 这个构造函数主要是用于初始化插件的路径。 7. 接下来是一个静态方法的定义: ```php public static function init_hvp_contents() { global $DB; $contents = $DB->get_records('hvp', array('slug' => self::HVP_PLUGIN_NAME)); if ($contents) { foreach ($contents as $content) { self::$hvp_content[$content->id] = $content; } } } ``` 这个静态方法主要是用于初始化H5P内容。它通过调用Moodle数据库中的记录,并将H5P内容存储到上面定义的静态变量$hvp_content中。 8. 最后一个方法的定义: ```php public function get_hvp_content_by_id($id) { return self::$hvp_content[$id]; } ``` 这个方法根据H5P内容的ID返回对应的H5P内容。 以上就是moodle-mod_hvp中classes/framework.php代码的详解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值