qiansion/framework

The QianSion Framework.

v1.0.5 2023-02-22 01:40 UTC

This package is auto-updated.

Last update: 2024-04-27 13:48:39 UTC


README

介绍

封装的php 文件系统

安装

composer require qiansion/framework

一、CronExpression使用说明

基于mtdowling/cron-expression的定时器表达式解析器,精确到秒,提供表达式的构造器。

// Works with predefined scheduling definitions
$cron = Cron\CronExpression::factory('@daily');
$cron->isDue();
echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
echo $cron->getPreviousRunDate()->format('Y-m-d H:i:s');

// Works with complex expressions
$cron = Cron\CronExpression::factory('3-59/15 2,6-12 */15 1 2-5');
echo $cron->getNextRunDate()->format('Y-m-d H:i:s');

// Calculate a run date two iterations into the future
$cron = Cron\CronExpression::factory('@daily');
echo $cron->getNextRunDate(null, 2)->format('Y-m-d H:i:s');

// Calculate a run date relative to a specific time
$cron = Cron\CronExpression::factory('@monthly');
echo $cron->getNextRunDate('2010-01-12 00:00:00')->format('Y-m-d H:i:s');

从左至右,这些元素的定义如下:

1.秒(0–59) 2.分钟(0–59) 3.小时(0–23) 4.月份中的日期(1–31) 5.月份(1–12) 6.星期中的日期(1–7) 7.年份(1970–2099)

CRON表达式是表示要执行的特定命令的计划的字符串。CRON计划的组成部分如下:

*    *    *    *    *    *    *
-    -    -    -    -    -    -
|    |    |    |    |    |    |
|    |    |    |    |    |    + 年 [选填、非必要]
|    |    |    |    |    +----- 周的第几天 (0 - 7) (Sunday=0 or 7)
|    |    |    |    +---------- 月 (1 - 12)
|    |    |    +--------------- 月的第几天 (1 - 31)
|    |    +-------------------- 小时 (0 - 23)
|    +------------------------- 分钟 (0 - 59)
+------------------------------ 秒 (0 - 59)

示例:

 0 10,14,16 * * *  每天上午10点,下午2点和下午4点 
 0,15,30,45 * 1-10 * *  每月前10天每隔15分钟 
 0 0 1 1 * 2018  在2012年1月1日午夜过30秒时 
 0 8-5 * * MON-FRI  每个工作日的工作时间
 */2 * * * 6,7 2018-2020 在2018-2020年的每个星期六星期日每2分钟 

二、FTP使用说明

  1. 引入类
use QianSion\Ftp\Auth as FtpAuth;
use QianSion\Ftp\Client;
  1. 登陆
$auth = FtpAuth::getInstance('127.0.0.1', 'root', 'root');
  1. 设置参数
$auth->setOptions(FTP_USEPASVADDRESS, false);
  1. 得到操作客户端
$ftpClient = new FtpClient($auth);
  1. 调用操作方法

    • 上传文件 `$ftpClient->putObject('远程目录', '本地文件路径', '传输模式');`

    • 下载文件 $ftpClient->getObject('远程目录', '本地文件路径', '传输模式');

    • 创建目录 $ftpClient->mkdir('路径', '权限', '是否递归创建');

    • 删除目录 $ftpClient->rmdir('路径', '是否递归删除');

    • 删除文件 $ftpClient->delObject('文件路径')

    • 得到目录下文件列表 $ftpClient->getObjectList('路径')

    • 得到文件大小 $ftpClient->getFileSize('文件路径')

    • ...