Tag: PHP的

在解释型语言中使用非常大的整数时会出现意外的结果

我试图得到1 + 2 + … + 1000000000的总和,但是我在PHP和Node.js中得到了有趣的结果。 PHP $sum = 0; for($i = 0; $i <= 1000000000 ; $i++) { $sum += $i; } printf("%s", number_format($sum, 0, "", "")); // 500000000067108992 Node.js的 var sum = 0; for (i = 0; i <= 1000000000; i++) { sum += i ; } console.log(sum); // 500000000067109000 正确的答案可以使用计算 1 […]

获取当前脚本的绝对path

我search了高和低,并获得了很多不同的解决scheme和包含信息的variables来获取绝对path。 但他们似乎在某些条件下工作,而不是在其他条件下工作。 有没有一个银子弹的方式来获取当前执行脚本的绝对path在PHP? 对我来说,脚本将从命令行运行,但它应该也是如果在Apache等运行的function 澄清:最初执行的脚本,而不是我们目前所在的文件

检查数组是否为空

我有以下代码 <?php $error = array(); $error['something'] = false; $error['somethingelse'] = false; if (!empty($error)) { echo 'Error'; } else { echo 'No errors'; } ?> 然而, empty($error)仍然返回true ,即使没有设置。 什么不对?

在PHP中正确的存储库模式devise?

前言:我试图在MVC体系结构中使用关系数据库中的存储库模式。 我最近开始在PHP中学习TDD,我意识到我的数据库与我的应用程序的其他部分密切相关。 我已经阅读了关于存储库,并使用IoC容器 “注入”到我的控制器。 非常酷的东西。 但是现在有关于存储库devise的一些实际问题。 考虑下面的例子。 <?php class DbUserRepository implements UserRepositoryInterface { protected $db; public function __construct($db) { $this->db = $db; } public function findAll() { } public function findById($id) { } public function findByName($name) { } public function create($user) { } public function remove($user) { } public function update($user) { } } 问题#1:太多领域 […]

PHP 5.4通话时间通过引用 – 易于修复吗?

有什么方法可以轻松解决这个问题,还是我真的需要重写所有的遗留代码? PHP致命错误:通过引用的呼叫时间已被删除…在第30行 随着variables被传递到函数作为整个代码的引用,这种情况发生。

如果和foreach分离

我有一个foreach循环和一个if语句。 如果find一场比赛,我需要最终摆脱这个问题。 foreach($equipxml as $equip) { $current_device = $equip->xpath("name"); if ( $current_device[0] == $device ) { // found a match in the file $nodeid = $equip->id; <break out of if and foreach here> } }

在PHP中跟踪脚本执行时间

PHP必须跟踪特定脚本为了执行max_execution_time限制而使用的CPU时间量。 有没有一种方法可以访问脚本的内部? 我想包括一些logging与我的testing有关多lessCPU在实际的PHP烧(时间不会增加,当脚本是坐着等待数据库)。 我正在使用Linux机器。

在PHP中初始化(空)数组的最佳方法

在某些其他语言(例如AS3)中,已经注意到,如果像这样做var foo = []而不是var foo = new Array() ,则由于对象创build和实例化的原因,初始化新数组会更快。 我不知道在PHP中是否有任何等价的东西? class Foo { private $arr = array(); // is there another / better way? }

打印PHP调用堆栈

我正在寻找一种在PHP中打印调用堆栈的方法。 如果函数刷新IO缓冲区,奖励点。

Mac OS X Lion中的PHP.ini在哪里? 以为这是在/ usr / local / php5 / lib

我想在我的Mac上运行一些PHP,取消注释httpd.conf,激活web共享,安装MySQL等。我似乎无法find我的PHP文件,最重要的是,PHP.ini。 在我的旧机器上,它位于/ usr / local / php5 / lib但是php5目录不存在于/ usr / local中。 我需要购买一个包吗?还是我在错误的地方看? 运行OS X 10.7.3,PHP 5.3.8,Apache / 2.2.21 谢谢。