__set() 当变量没有设置时会触发
__get() 当没有该变量你还获取时
__toString() 当你试图输出一个对象时 必须有返回值
__call() 当调用一个不存在的方法
__callStatic() 当调用一个不存在的静态方法
__invoke() 把一个对象当做函数执行
__get() 当没有该变量你还获取时
__toString() 当你试图输出一个对象时 必须有返回值
__call() 当调用一个不存在的方法
__callStatic() 当调用一个不存在的静态方法
__invoke() 把一个对象当做函数执行
2017-12-07
基本看完自己的简单框架也差不多了,自动加载,主从数据库读写分离,简单路由,MVC,ORM,钩子,DB工具类等等功能。加上一些类库 很像一些框架的几年前版本了。
2017-12-05
观察者的实现在前面已经讲过了一个事件抽象类,一个观察者接口 ,事件类继承事件抽象类,观察者实现观察者接口就行了。很简单的但在实际中用好很难吧。
2017-12-05
读写分离很有必要,写入只要一个数据库,读有多个从服务器。老师的这个随机返回从服务器可以动态拓展读服务器。在大流量的时候动态拓展很有必要。感觉是很多框架的底层实现。
2017-12-03
这位老师在中国地位仅次于鸟哥,喷他之前 撒泡尿照照.Swoole 是他写的. 这是我目前在慕课网看过最好的视频.
2017-11-30
这位讲师 是在中国排第2名的.第一名是鸟哥. Swoole是他写的.这个教程比有些收费的不知道好到哪里去了.niave
2017-11-30
mysqli.php 的写好了,可以执行
namespace IMooc\Database;
use IMooc\IDatabase;
class MySQLi implements IDatabase{
protected $conn;
function connect($host,$user,$passwd,$dbname){
$mysqli = new \mysqli($host,$user,$passwd,$dbname);
$this->conn = $mysqli;
}
namespace IMooc\Database;
use IMooc\IDatabase;
class MySQLi implements IDatabase{
protected $conn;
function connect($host,$user,$passwd,$dbname){
$mysqli = new \mysqli($host,$user,$passwd,$dbname);
$this->conn = $mysqli;
}
2017-11-28
<?php
namespace Sta;
class Loader{
static function autoload($class)
{
#命名空间转化文件路径
require $file=BASEDIR.'/'.str_replace('\\','/',$class).".php";
#var_dump($file);
}
}
namespace Sta;
class Loader{
static function autoload($class)
{
#命名空间转化文件路径
require $file=BASEDIR.'/'.str_replace('\\','/',$class).".php";
#var_dump($file);
}
}
2017-11-27