小编Sli*_*liq的帖子

如何获得对年度敏感的日历周?日期("W")给出了1月1日的52

正如标题所说,PHP的日期("W")函数返回日历周(当天).不幸的是,它在大多数年份的第一天给出了52或53.这是一个简单的思维方式,正确,但非常烦人,因为2012年1月1日不是日历周52,它不是当年的日历周.大多数日历将此定义为上一年的第0周或第52周.

当您按照日历周对每年的每一天进行分组时,这非常棘手:2012年1月1日和2012年12月31日都被放入同一个日历周组.

所以我的问题是:是否存在对PHP日期("W")的(本机)年度敏感的替代方案?

编辑:我想我以非常不明确的方式编写了这个问题的第一个版本,所以这是我的编辑:我正在寻找一个函数,它给出了一年中第一天的正确日历周.PHP的日期("W")给出了2012年1月1日的52,这是"错误的".它应该是0或null.据官方消息称,一年中的第一个日历周从一年的第一个星期一开始.所以,如果一年的第一天不是星期一,那就不是第1周!这是第0周.维基百科文章

如果1月1日是星期一,星期二,星期三或星期四,则是01周.如果1月1日是星期五,星期六或星期日,则是上一年的第52周或第53周.

这变得棘手,因为今年的最后几天也是在第52/53周.日期("W")不分为当年和上一年.

php date week-number

7
推荐指数
1
解决办法
5368
查看次数

如何跟踪PHP中每行/每行/方法的执行时间?

是否有最佳实践(基于IDE?),PHP/bash脚本或其他内容

  • 获取一行的执行时间
  • 获取一行代码的执行时间(例如第17行到第42行)
  • 获取某个函数或方法的执行时间

用PHP?我目前microtime()仍然坚持使用自建的解决方案,但这是一种肮脏,不方便和缓慢的方法.我对Eclipse,Netbeans,PHPStorm和VIM等主要PHP IDE的解决方案特别感兴趣.一个完美的解决方案是跟踪整个应用程序的工具,并为每一行,每个方法和每个自定义操作块提供执行时间跟踪.

我将提供50赏金的答案.

php ide workflow

6
推荐指数
1
解决办法
3367
查看次数

是否有Netbeans/PHPStorm插件用于编写/重构PSR-1/2编译代码(如phphint.org)

正如标题所说:

是否有用于编写/重构PSR编译代码的Netbeans/PHPStorm插件?

phphint.org正是如此,但只提供在线复制和粘贴工具,而不是IDE集成的实时解决方案.

究竟我在寻找的是:

  1. 键入时"实时"PSR代码检查
  2. 重新格式化/重构项目以符合PSR(1/2)编码指南(尽可能)

如果你想知道我在说什么: PSR-1基本编码标准PSR-2编码风格指南是由大PHP人员发布的编码指南.

php netbeans coding-style phpstorm

6
推荐指数
2
解决办法
7381
查看次数

为什么在服务器重启后,守护进程模式下的HHVM无法自动启动?

HipHop/HHVM可以作为守护进程运行(因此它在重新启动后会自动启动)

sudo /usr/bin/hhvm --mode daemon --config /etc/hhvm/server.hdf
Run Code Online (Sandbox Code Playgroud)

运行时,它完美地工作(这表明配置是可以的).但重新启动机器后,HHVM消失了,需要手动重启.以上行包括 这些配置已从HHVM创建者的官方教程中删除.经典服务语法sudo service hhvm start也可以很好地工作,但不会超过机器重启.

我采取了什么措施来追查问题:

/var/log/hhvm/error.log中的HHVM错误日志在每次重新启动时记录此行:Unable to open pid file /var/run/hhvm/pid for write./etc/hhvm/server.hdfPidFile = /var/run/hhvm/pid在第一线.由于默认情况下它附带HHVM,我不想更改它.我认为sudo就是问题所在.没有sudo HHVM将无法运行.Chmod 777'的pid文件并指向另一个空文件并没有解决问题.

题:

将HHVM安装为守护进程的正确方法是什么?

php daemon hiphop hhvm

6
推荐指数
1
解决办法
1万
查看次数

mySQL中的整个数据库(不是每个表!)都有自动增量吗?

在mySQL中,所有表都有适当的本机非解决方法自动增量可能性吗?我的意思是,不仅仅是每个表的auto inc,我的意思是数字数据库中每个新行的一个数字?

我在专业的oracle(?)设置上看到了这一点.主要优点是所有表中的所有行/元素都具有唯一ID,而不仅仅是PER TABLE.

mysql auto-increment

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

Yii框架:如何获取num_rows?

由于官方文档没有说明如何使用他们的系统简单地"num_rows",我需要一些帮助:如何获得结果集中的行数?

yii

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

我可以将github repo名称从大写更改为小写而不会丢失链接目标吗?

正如标题所说,是否有可能重命名github repo fooBar-for-MySQL-and-PHPfoobar-for-mysql-and-php不会杀死你的回购链接?常见的git工具有什么问题吗?

为了更清楚:这个问题不是关于重命名和丢失观察者,星号和分支,而是关于从大写变为小写,这可能会产生"未找到URL"之类的效果.我有太多的星星和叉子来试试这个.

Github的官方帮助部分没有注意到这种情况(https://help.github.com/).

rename github repository

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

Netbeans:如何显示将推送的所有(git)提交?

如何显示将在 Netbeans 中推送的所有 (git) 提交?Netbeans 7.3 只是推送所有内容,而不首先显示所有提交的列表(就像 IntelliJ IDEA 所做的那样)。

git netbeans push commit

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

如何以正确的方式编辑作曲家加载的供应商代码(在PHP中)?

问题

有时作曲家加载的依赖项是错误的或者缺少你需要的东西.

问题(S)

1.)通常是否允许触摸/编辑作曲家加载的任何内容?

2.)如果是,那么如何防止这些编辑被覆盖/与下一次更新产生冲突

3.)如果不是,那么在编辑加载作曲家的依赖项时需要采用什么方式?

php composer-php

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

可以'如果X,那么echo X'可以在PHP中缩短吗?

在PHP中的视图中回显东西的最短路径 - 当不使用模板引擎时 - 是这样的:

<?php if (!empty($x)) echo $x; ?>
Run Code Online (Sandbox Code Playgroud)

如需更深入的解释,为什么使用!empty是一个不错的选择,请看这里.

是否可以在不编写变量名两次的情况下编写它(就像在其他语言中一样)

!echo $x;
Run Code Online (Sandbox Code Playgroud)

要么

echo? $x;
Run Code Online (Sandbox Code Playgroud)

php

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