小编sil*_*npi的帖子

PHP脚本 - 检测是在linux还是Windows下运行?

我有一个PHP脚本,可以放在Windows系统或Linux系统上.在任何一种情况下我都需要运行不同的命令.

我如何检测我所处的环境?(最好用PHP而不是聪明的系统黑客)


实在抱歉!!脚本从命令行运行!!!!

php linux windows operating-system detect

131
推荐指数
10
解决办法
7万
查看次数

在MySQL和PHP中进行计算

语境:

  • 我们有一个PHP/MySQL应用程序.
  • 计算的某些部分直接在SQL中完成.例如:过去24小时内创建的所有用户都将通过SQL查询返回(NOW() - 1天)

同事和我之间正在进行辩论,我认为我们应该:

A.将所有计算/代码/逻辑保存在PHP中,并将MySQL视为"哑"信息库

他的意见:

B.根据什么更轻松/更快地进行混合搭配.http://www.onextrapixel.com/2010/06/23/mysql-has-functions-part-5-php-vs-mysql-performance/

我正在考虑可维护性的观点.他正在考虑速度(正如文章指出的那样,MySQL中的某些操作速度更快).


@ bob-the-destroyer @tekretic @OMG Ponies @mu太短了@Tudor Constantin @tandu @Harley

我同意(并且很明显)高效的WHERE子句属于SQL级别.但是,例如:

  1. 使用NOW()计算24个句点 - 在SQL中1天选择在过去24小时内创建的所有用户?
  2. 返回大写的所有用户的名字和姓氏?
  3. 连接字符串?
  4. (想法,伙计?)

清除属于SQL域的示例:

  1. 特定的WHERE选择
  2. 嵌套的SQL语句
  3. 订购/分拣
  4. 选择DISTINCT项目
  5. 计算行/项目

php mysql maintainability performance

49
推荐指数
4
解决办法
2万
查看次数

使用MySQL的TIMESTAMP直接存储时间戳

关于以MySQL的TIMESTAMP格式保存日期和时间值与自定义UNSIGNED INT格式相比,我处于两难境地.这里主要考虑的是检索速度,PHP中适当的范围计算以及偶尔格式化为人类可读取的值.

每种类型所需的存储空间及其范围:

DATETIME        8 bytes  '1000-01-01 00:00:00' to '9999-12-31 23:59:59'
TIMESTAMP       4 bytes  '1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC
UNSIGNED INT    4 bytes  (Maximum Value 4294967295)
Run Code Online (Sandbox Code Playgroud)

我根本不需要DATETIME的范围.我在TIMESTAMP和UNSIGNED INT之间徘徊.

有利于UNSIGNED INT的论据:

  • UNIX时间戳4294967295转换为Sun,格林威治标准时间2月7日2106 06:28:15这超过了TIMESTAMP,对我来说足够好了
  • 直接在PHP中比较这些时间戳会更快,而不是通过strtotime()转换TIMESTAMPs然后比较它们

TIMESTAMP给我的唯一好处是当我手动读取mysql表中的值并需要"看到"它们时.

是否有任何令人信服的理由使用TIMESTAMP而不是UNSIGNED INT?

php mysql datetime timestamp unsigned-integer

37
推荐指数
3
解决办法
2万
查看次数

在PowerShell中自动确认删除

我正在运行以下命令:

get-childitem C:\temp\ -exclude *.svn-base,".svn" -recurse | foreach ($_) {remove-item $_.fullname}
Run Code Online (Sandbox Code Playgroud)

这经常提示我这样:

Confirm
The item at C:\temp\f\a\d has children and the Recurse parameter was not specified. If you continue,
all children will be removed with the item. Are you sure you want to continue?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): 
Run Code Online (Sandbox Code Playgroud)

如何将其自动设置为"A"?

powershell scripting automation windows-vista

32
推荐指数
5
解决办法
8万
查看次数

在ffmpeg中进行后处理以在MP4文件中移动'moov atom'(qt-faststart)

是否可以从命令行运行ffmpeg,它将'moov atom'元数据放在MP4文件的开头或运行qt-faststart作为ffmpeg中的后处理操作,这样生成的文件就可以通过互联网?

我当然可以将它作为一个单独的命令运行,但更喜欢它是某种东西

  • 作为ffmpeg中的选项,或
  • 作为转换后的一部分,通过ffmpeg转换视频文件时的命令行选项

编辑1

http://ffmpeg.org/ffmpeg.html#mov

MOV/MP4复用器

多路复用器选项包括:

'-moov_size字节'

Reserves space for the moov atom at the beginning of the file instead of 
placing the moov atom at the end. If the space reserved is insufficient, 
muxing will fail.
Run Code Online (Sandbox Code Playgroud)

mp4 ffmpeg video-processing video-streaming video-conversion

28
推荐指数
2
解决办法
4万
查看次数

在linux系统上找到所有与'name'匹配的文件,并用它们搜索'text'

我需要在linux系统上找到'filename.ext'的所有实例,看看哪些实例包含'lookingfor'文本.

是否有一组linux命令行操作可以工作?

linux command-line grep find

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

在哪里存储PHP应用程序的数据库登录凭据

我们有一个开发服务器和一个具有不同数据库连接详细信息(用户名,密码等)的实时服务器.

目前,我们将数据库连接详细信息存储在initial.php中,如果存在DEFINE语句,则选择一个.我们在我们的实时服务器上手动添加DEFINE语句.

这是一种安全的方法吗?有哪些更好的/替代方法来管理数据库连接安全性?

这样做的一个结果是每个开发人员都可以看到数据库连接的详细信息,这有点风险......

php database security connection

19
推荐指数
1
解决办法
8559
查看次数

删除PHP字符串中的所有不匹配字符?

我有文本,我想删除所有不是以下的字符.

desired_characters =

0123456789!&',-./abcdefghijklmnopqrstuvwxyz\n
Run Code Online (Sandbox Code Playgroud)

最后一个是我想要保留的\n(换行符).

php regex

17
推荐指数
1
解决办法
8323
查看次数

强制SVN更新/签出以覆盖本地文件

我打算跑(在我的服务器上!)

svn更新

更新我的LIVE网站的更新.但是,我担心"C"冲突会阻止我的网站脚本运行.如何强制结帐/更新过程覆盖所有本地文件(在我的服务器上!)?

我知道一个解决方案是在一个单独的目录上执行此操作 - 其他任何更有效的方法吗?

我看过Force一个SVN checkout命令来覆盖当前文件

我没有--force选项

svn overwrite svn-update svn-checkout

15
推荐指数
2
解决办法
7万
查看次数

使用Zend Framework构建REST API服务器的示例?

我是Zend Framework的新手(不是PHP),我需要使用Zend创建一个基于REST的API.

我已经看过使用Zend_Rest_Server的示例,但是其他来源声明已经弃用了.

我无法找到一个可以证明我应该如何构建这样一个API的实例.

php web-services zend-framework zend-rest

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