小编nib*_*bot的帖子

MiniBufExplorer和NERD_Tree关闭缓冲意外行为

我安装了MiniBufExplorer和NERDTree.在NERDTree窗口与MiniBufExplorer同时打开并具有> 2个可编辑缓冲区的情况下,使用:bd关闭其中一个缓冲区会导致缓冲区为空,但窗口显示空缓冲区而不是下一个或上一个缓冲区之一.此外,刚刚关闭的缓冲区仍显示为MBE列表中的选定内容.执行此操作时窗口的布局如下:(N - NerdTree,M - MiniBufExpl,D - 文档窗口)

NNN MMMMMM
NNN DDDDDD
NNN DDDDDD
NNN DDDDDD
Run Code Online (Sandbox Code Playgroud)

关于可能出现什么问题的任何建议?

vim buffer

5
推荐指数
1
解决办法
3460
查看次数

如何使用DateTime类将'02/31/2010'作为无效日期捕获?

我一直在PHP中使用DateTime类,因为date()具有Unix时间戳的缺点.但是,这两种方法都没有检测到没有31天的月份的无效日期,但是尝试使用第31天.

示例代码:

try {
    $date = new DateTime('02/31/2018');
    $formattedDate = $date->format('Y-m-d');
}
catch (Exception $e) {
}
echo $formattedDate;
Run Code Online (Sandbox Code Playgroud)

示例输出:

2018-03-03
Run Code Online (Sandbox Code Playgroud)

更新1:

要使用checkdate(),我需要日期的组成部分.为此,我需要使用日期字符串作为构造函数来实例化DateTime对象.在'02/31/2018'的情况下,它将在实例化时将其转换为'03/03/2018'.此时,通过checkdate()运行组件月,日,年将为时已晚.解决办法是什么?

更新2:

如果我强制使用特定格式(例如mm/dd/yyyy),那么获取组件部分日期很容易,但如果我接受strtotime()接受的所有格式,则在通过strtotime()运行之前我无法执行checkdate - > date()或DateTime :: __ construct - > DateTime :: format().

我一直在PHP中使用DateTime类,因为date()具有Unix时间戳的缺点.但是,这两种方法都没有检测到没有31天的月份的无效日期,但是尝试使用第31天.

示例代码:

try {
    $date = new DateTime('02/31/2018');
    $formattedDate = $date->format('Y-m-d');
}
catch (Exception $e) {
}
echo $formattedDate;
Run Code Online (Sandbox Code Playgroud)

示例输出:

2018-03-03
Run Code Online (Sandbox Code Playgroud)

更新1:

要使用checkdate(),我需要日期的组成部分.为此,我需要使用日期字符串作为构造函数来实例化DateTime对象.在'02/31/2018'的情况下,它将在实例化时将其转换为'03/03/2018'.此时,通过checkdate()运行组件月,日,年将为时已晚.解决办法是什么?

更新2:

如果我强制使用特定格式(例如mm/dd/yyyy),那么获取组件部分日期很容易,但如果我接受strtotime()接受的所有格式,则在通过strtotime()运行之前我无法执行checkdate - > date()或DateTime :: __ construct - > DateTime :: format().

php datetime date

3
推荐指数
1
解决办法
980
查看次数

标签 统计

buffer ×1

date ×1

datetime ×1

php ×1

vim ×1