PHP 计算今天是本学期的第几周 作者: Chuwen 时间: 2019-02-25 分类: PHP 评论 # 代码如下 > ## 2019-09-22 18:06 更新代码,解决今天是星期日,但直接显示下一周的情况 > ## 2019-09-05 09:23 更新代码,解决获取本周一时间错误的情况 > ## 2019-03-11 12:40 更新代码,由于上次仓促,未考虑周全,今天抽空更新一下 ```php /** * 计算当前是本学期的第几周 * 默认是以 2019-02-25 为开学时间 * @param int $start_timestamp 本学期开始时间戳,可以用 strtotime 函数获取,如 strtotime('2019-02-25') * @return int */ function now_week($start_timestamp=1551024000) { date_default_timezone_set('Asia/Shanghai'); $this_week_monday = strtotime("this week Monday", $start_timestamp);//获取指定时间中,周一时间戳 //使用 ceil 函数进行“向下取整” // ceil(3.4) 输出结果为 4 // ceil(3.6) 输出结果为 4 return ceil((time()-$this_week_monday)/604800); } ``` # 实际应用: ![Snipaste_2019-03-11_12-45-55.png][1] [1]: https://cdn.nowtime.cc/2019/03/11/2971307993.png
ThinkPHP 5.1 使用 Md\MDAvatars 输出无法显示图片 的 解决办法 作者: Chuwen 时间: 2019-01-20 分类: PHP 评论 # 代码如下: ```php Output2Browser(); } } ``` # 输出结果 ![Snipaste_2019-01-20_10-08-47.png][1] # 解决办法 在 `$Avatar->Output2Browser();` 上一行加一句 `ob_end_clean();` 即可解决 ``` Output2Browser(); } } ``` ![Snipaste_2019-01-20_10-12-15.png][2] [1]: https://cdn.nowtime.cc/2019/01/20/2675926716.png [2]: https://cdn.nowtime.cc/2019/01/20/649354710.png
Composer 常见问题 作者: Chuwen 时间: 2019-01-20 分类: PHP 评论 原文链接:[Composer常见问题][1] 安装了Composer后,运行 `composer --version`,查看Composer的版本号。如果出现下面的提示,那么软件安装成功。 ``` Composer version 1.2.0 2016-07-19 01:28:52 ``` 若想给某个项目添加类似monolog的第三方库,则按下面的步骤操作: 新建 `composer.json` 文件,添加内容: ``` { "require": { "monolog/monolog": "1.20.0" }, "repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" // Mirror site in China. } } } ``` 以命令行方式打开项目的根目录,输入命令:`composer install` 正常情况下,一切顺利,执行完上述命令就能够成功导入 monolog 库到项目中。但是,现实与想象总是有段距离,上面只是走完了“长征”路程的一半,还有“雪山”要翻、“草地”要过呢! 执行完命令:`composer install` 后,并不会像期待那样地导入依赖,而是抛出异常。 > The openssl extension is required for SSL/TLS protection but is not available. If you can not enable the openssl exension, you can disable this error, at your own risk, by setting the ‘disable-tls’ option to true. 这段异常日志的大致意思是,Composer 采用 SSL 连接,需要外挂 OpenSSL 插件。 要消除这个异常,有两种解决方式,一是放弃SSL连接、直接“裸奔”;二是启用 OpenSSL。 取消SSL连接的命令是 `composer config -g -- disable-tls true`。然而并没有什么卵用,试过之后,又抛出了新的异常。 剩下来的方案就是尝试启用 OpenSSL。安装了PHP后,安装目录(类似C:\php-5.6.24)中包含两个文件,一个是php.ini-development,另一个是php.ini-production,选择将其中任意的一个文件重命名为 `php.ini`,用作PHP的默认配置文件。通过修改配置文件来启用OpenSSL插件。 编辑php.ini文件,首先,定位到: ``` ; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir extension_dir = "./" ; On windows: extension_dir = "ext" ``` 删除 `extension_dir = "./"` 和 `extension_dir = "ext"` 前面的分号,取消注释这两行代码,配置 PHP 插件目录为./ext。 然后,定位到: ``` ... ;extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ... ``` 删除 `extension=php_openssl.dll` 前面的分号,取消注释,从而启用 `OpenSSL` 插件。 注意:因为 SSL 连接需要认证,所以继续下面的步骤之前,需要准备好CA证书(建议把证书保存到 `C:\php-5.6.24\verify` 目录中),可以从 `https://curl.haxx.se/docs/caextract.html` 处下载。 接下来,定位到 ``` ;openssl.cafile= ``` 和上面一样,删去分号,取消注释,设置CA证书为 `openssl.cafile= C:\php-5.6.24\verify\cacert.pem`。 最后, 重新在命令行窗口中打开项目的根目录,执行命令:`composer install`,等待几分钟后,就可以成功添加 monolog 依赖。 [1]: https://mp.weixin.qq.com/s?__biz=MzI5NzQwNzY4Ng==&mid=2247483652&idx=1&sn=23ca573af8d41cda0d4f5270b25020d2&scene=4#wechat_redirect
PHP 获取 QQ群 bkn 参数 作者: Chuwen 时间: 2018-11-15 分类: PHP 2 条评论 ## 由于项目需求,需要获得 QQ 群成员的信息,所以便使用 Google 找到了这个开源项目: > GitHub 项目地址:https://github.com/nasaplayer/getCurrentQQGroupList ## 由于我只需要 `bkn` 的计算代码,所以我就提取出来了 > 这个计算方法的位置在:https://github.com/nasaplayer/getCurrentQQGroupList/blob/master/v3/getCurrentQQ.class.php > 第 177 行 ```