`
fantom
  • 浏览: 141939 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

自动创建工作副本简单版

 
阅读更多
<?php

/**
 * 自动创建工作总结文件简单版
 */

/**
 *
 * @author fantom
 * @time  2011-02-27
 */
class createDir {

    private $_year; //年份
    private $_month; //月份
    private $_exclude; //排除的天数
    private $_createDir; //目录路径
    private $_postfix; //后缀名

    public function __construct($createDir, $year, $month, $postfix = 'txt', $exclude = array(6, 0)) {
        $this->_createDir = $createDir;
        $this->_year = $year;
        $this->_month = $month;
        $this->_postfix = $postfix;
        $this->_exclude = $exclude;
    }

    public function createDir() {
        $dir = $this->doCreateDir($this->_createDir . DIRECTORY_SEPARATOR . $this->_year . DIRECTORY_SEPARATOR . $this->_month);
        $i = 1;
        $resultArr = array();
        $monthArr = array(4, 6, 9, 11);
        for ($i; $i <= 31; $i++) {
            //二月处理
            if ($this->_month == 2 && $i > 28) {
                if ($this->_year % 4 == 0) {
                    if ($i > 29) {
                        break;
                    }
                } else {
                    break;
                }
            }

            //排除31天
            if (in_array($this->_month, $monthArr) && $i == 31) {
                break;
            }

            //排除的星期
            $weekDay = date('w', mktime(0, 0, 0, $this->_month, $i, $this->_year));
            if (in_array($weekDay, $this->_exclude)) {
                continue;
            }
            $createdir = $dir . DIRECTORY_SEPARATOR . $this->_month . '-' . $i . '.' . $this->_postfix;
            $resultArr[] = file_put_contents($createdir, $this->doDefault($i));
        }
        return $resultArr;
    }

    /**
     * 多层创建目录方法
     * $dir 目录结构,先分拆,看是否存在
     * author fantom
     * time 2011-10-10
     */
    private function doCreateDir($dir) {
        $dirArr = explode(DIRECTORY_SEPARATOR, $dir); //把多级目录分别放到数组中
        $dirCount = count($dirArr);
        $path = null;
        for ($i = 0; $i < $dirCount; $i++) {
            $path .= $dirArr[$i] . DIRECTORY_SEPARATOR;
            if (!is_dir($path)) {
                mkdir($path, 0777);
            }
        }
        return $dir;
    }

    private function doDefault($day) {
        return $this->_month . '-' . $day . '工作总结:';
    }

}

$createDemo = new createDir('h:' . DIRECTORY_SEPARATOR . 'demo', date('Y'), 2);
$createDemo->createDir();
  • 大小: 904.1 KB
分享到:
评论

相关推荐

    001批量创建工作表共1页.pdf.zip

    7. **事件触发**:设置VBA代码,使得每当工作簿打开时自动创建新的工作表。 8. **错误处理**:在VBA代码中添加错误处理机制,防止因某些条件未满足而引发的错误。 9. **数据导入和导出**:如果涉及到大量数据,...

    A41 磁铁自动化组装设备 - 副本.rar

    【描述】"A41 磁铁自动化组装设备 - 副本.rar" 描述简单,但暗示了这是一款专门针对磁铁组装的自动化设备,可能是某个生产线的一部分。副本字样可能意味着这是原始设计的一个备份或修改版本,以备不时之需。 【标签...

    MongoDB 主从复制,副本集分布式存储

    **主从复制**是一种简单的复制模式,其中一个服务器作为主服务器,负责接受所有写操作,而从服务器则负责接收来自主服务器的数据副本。这种复制方式适用于负载较小的应用场景。 **副本集**则是一种更高级的复制机制...

    SVNSERVER简易版

    运行该文件后,通常会自动创建默认的仓库目录和配置文件。以下是一般步骤: 1. **运行自解压文件**:双击`svnserver.exe`,根据提示进行安装。 2. **配置服务器**:安装过程中可能需要指定仓库路径、端口号等信息。...

    根据Excel模板,生成副本并添加数据,截取指定区域生成图片

    标题提到的"根据Excel模板,生成副本并添加数据,截取指定区域生成图片"是一种高效的工作流解决方案,它结合了Python编程语言和Microsoft Excel的特性。这个过程涉及到多个知识点,下面将详细解释。 首先,**Excel...

    SVN创建、合并与切换分支操作详解

    3. 更新你的工作副本到新创建的分支,此时你就可以在这个分支上进行独立的开发了。 ### 合并分支 合并分支的步骤: 1. 选择要合并的分支路径。 2. 指定要合并的范围,可以是一个或多个修订版本号。 3. 执行合并操作...

    全自动GHOST硬盘版

    总的来说,全自动GHOST硬盘版是一个强大的系统维护工具,它的自动化特性使得即使是电脑初学者也能轻松掌握,是个人和企业用户保障系统安全、提升工作效率的理想选择。只需一次简单的设置,就能享受到无忧的系统管理...

    fckeditor副本文编辑器

    **富文本编辑器详解** 富文本编辑器是网页开发中不可或缺的一部分,它为用户提供了一种在网页上...通过深入理解和熟练掌握fckeditor,开发者和内容创作者可以更好地利用它来提升工作效率,创建出更具吸引力的内容。

    编辑过程自动保存插件

    值得注意的是,尽管自动保存功能能够有效防止数据丢失,但为了进一步保障数据安全,建议用户仍定期进行手动保存,并且利用ArcGIS的版本控制和备份功能,创建不同阶段的数据副本。这样可以在系统出现问题或需要回溯到...

    史上最简单易学的Python自动化测试教程从基础与实战【柠檬班软件测试】PPT模板.pptx

    总的来说,这门Python自动化测试教程旨在通过基础理论与实战相结合的方式,帮助学习者快速上手Python编程,并熟练运用到自动化测试工作中。无论是对于软件测试人员还是想要提升自动化测试技能的开发者,都是一份极具...

    易语言单文件更新提示自动更新并替换自身

    易语言是一种基于中文编程的简单易学的编程环境,它为初学者提供了便捷的编程工具。在“易语言单文件更新提示自动更新并替换自身”的主题中,我们主要讨论的是如何设计一个程序,使得该程序在检测到有新版本可用时,...

    mongodb搭建,shell操作,索引,副本集

    - **创建副本集**: - **不带投票节点的副本集**:只有主节点和副本节点。 - **添加一个节点**:扩大副本集规模。 - **包含投票节点ARBITER副本集**:引入仲裁者节点参与选举过程。 - **延时同步和隐藏副本集**...

    u盘插入自动复制简单代码

    - **安全审计**:记录U盘插入事件,自动保存U盘数据副本,便于后期的安全审计工作。 #### 注意事项 - **安全性考虑**:自动复制功能可能带来安全风险,如病毒传播。应确保U盘无恶意软件,并定期扫描。 - **权限...

    Word创建备份文件 防止文件丢失.docx

    为了避免这种情况,Word 2021提供了一项实用功能——自动创建备份文件,以确保在主文件受损时可以迅速恢复。以下是关于如何启用和使用这一功能的详细步骤以及其重要性的说明。 首先,理解备份文件的作用是至关重要...

    SVN更新批处理

    当你在工作副本中执行`svn update`命令时,SVN会将仓库中的最新版本同步到你的工作副本中,确保你与团队的代码保持一致。 要创建一个SVN更新批处理脚本,你需要编写一个包含`svn update`命令的简单文本文件,扩展名...

    Linux系统 用户界面与进程的创建

    在上述实验中,我们看到一个简单的C语言程序,它的主要功能就是演示`fork()`的工作原理。程序首先调用`fork()`,根据返回值来判断当前进程是父进程还是子进程。如果`fork()`返回0,那么当前进程就是子进程;如果返回...

    Go-演示Kubernetes特性的自动化脚本

    编写自动化脚本可以方便地实现对k8s集群的自动化管理,包括创建、更新、删除Pod(容器实例)、Service(服务发现)、Deployment(滚动更新)等操作。 在这个名为"k8sdemo-master"的压缩包中,可能包含以下内容: 1...

    多线程的创建 vc

    3. 事件对象(Event):线程间的通信工具,可以设置为手动重置或自动重置,使用`CreateEvent`创建,`SetEvent`/`ResetEvent`改变状态,`WaitForSingleObject`等待。 四、线程局部存储(TLS) 线程局部存储允许在...

    ui自动化配套driver及浏览器-python

    "自动化配套____chrome____chrome浏览器稳定版 64位_69.0.3497.81 - 副本.exe" 文件是Chrome浏览器的安装包,而"自动化配套____chrome____chromedriver.exe" 是对应版本的ChromeDriver。确保ChromeDriver版本与安装...

Global site tag (gtag.js) - Google Analytics