https://github.com/yurunsoft/yurunevent
PHP事件类,支持全局事件和类中事件。程序员Q群:74401592
https://github.com/yurunsoft/yurunevent
Last synced: 4 months ago
JSON representation
PHP事件类,支持全局事件和类中事件。程序员Q群:74401592
- Host: GitHub
- URL: https://github.com/yurunsoft/yurunevent
- Owner: Yurunsoft
- License: mit
- Created: 2017-06-08T02:32:52.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2018-04-17T02:29:46.000Z (about 8 years ago)
- Last Synced: 2025-03-28T21:38:18.848Z (about 1 year ago)
- Language: PHP
- Homepage: http://git.oschina.net/yurunsoft/yurunevent
- Size: 12.7 KB
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# YurunEvent
PHP事件类,支持全局事件和在类中定义和使用事件。
# Composer
```json
"require": {
"yurunsoft/yurun-event" : "~2.0"
}
```
# 代码实例
## 全局事件
```php
// 监听事件
Event::on('test', function($e){
var_dump('trigger test', $e);
$e['value'] = 'yurun';
});
// 一次性事件
Event::once('test1', function($e){
var_dump('trigger test', $e);
$e['value'] = $e['message'];
});
// 触发事件
Event::trigger('test', array('message'=>'666', 'value'=>&$value));
```
## 类中事件
```php
class Test
{
use ClassEvent;
private $value;
public function setValue($value)
{
$this->value = $value;
$this->trigger('changeValue', array('value'=>$value));
}
}
$test = new Test;
// 绑定事件
$test->on('changeValue', function($e){
echo 'changeValue1:', $e['value'], PHP_EOL;
});
// 一次性事件
$test->once('changeValue', function($e){
echo 'changeValue2:', $e['value'], PHP_EOL;
});
$test->setValue(123);
$test->setValue(456);
```
更详细的代码请至Demo目录。