ahmard / clock

基于 ReactPHP 编写的 PHP 时钟

0.0.4 2021-07-01 18:16 UTC

This package is auto-updated.

Last update: 2024-09-29 05:56:36 UTC


README

此处是时钟的描述...

安装

composer require ahmard/clock

使用

use Clock\Clock;

Clock::after(1, function (){
    echo 'Executed';
});

Clock::forEachSecond(function (){
    echo "1 second has passed\n";   
});

Clock::forEachSecond(5, function (){
    echo "5 seconds has passed\n";   
});
  • 分钟
use Clock\Clock;

Clock::after('1 minute', function (){
    echo 'Executed';
});

Clock::forEachMinute(2, function (){
    echo "2 minutes has passed\n";   
});
  • 小时
use Clock\Clock;

Clock::after('1 hour', function (){
    echo 'Executed';
});

Clock::forEachHour(1, function (){
    echo "1 hour has passed\n";   
});

高级使用

use Clock\Clock;
use React\EventLoop\TimerInterface;

Clock::forEach('1 minute 5 seconds', function (){
    echo "1 minute 5 seconds has passed\n";   
});

Clock::forEach('2 minutes', function (TimerInterface $timer){
    echo "2 minutes has passed\n";   
    Clock::stop($timer);
});

声音

此库自带声音
要使用它们,您需要安装 Sox

use Clock\Clock;use Clock\Sound;

Sound::play(__DIR__ . '/test.mp3');

Clock::forEachMinute(function (){
    Sound::playAlarm();
});

通知

通知 推送到您的系统

use Clock\Clock;
use Clock\Notification;

$notification = Notification::create()
    ->setTitle('My Title')
    ->setIcon('/drive/path/to/icon.jpg');
    
$notification
    ->setBody('My notification body here')
    ->send();

Clock::forEach('2 minutes', function () use ($notification){
    $notification->setBody('Two minutes has passed');
    $notification->send();
});