首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Simpletest PHP "unit testing for PHP",得到错误信息" deprecated : Assigning the return value of new is deprecated“

使用Simpletest PHP "unit testing for PHP",得到错误信息" deprecated : Assigning the return value of new is deprecated“
EN

Stack Overflow用户
提问于 2010-07-04 03:28:37
回答 4查看 1.5K关注 0票数 3

我刚开始使用simpletest:http://www.simpletest.org/ for PHP,并且在我的服务器上使用PHP5.2*,当我试图根据他们的演示设置一个初始测试脚本时,我得到了一个充满错误的页面,如下所示……我不确定这是否与simpletest与PHP 5不兼容有关。*或者问题是什么,任何见解都值得感谢。看起来我仍然可以使用这个库,因为它在错误下面返回了看起来合适的内容,但我想了解一下这一点,这样我就可以修复它。谢谢

下面是我用来调用简单测试函数的php代码示例

代码语言:javascript
复制
<?php

require_once('C:/wamp/www/external/simpletest/simpletest/autorun.php');


class TestOfLogging extends UnitTestCase {
    function testFirstLogMessagesCreatesFileIfNonexistent() {
        @unlink(dirname(__FILE__) . '/../temp/test.log');
        $log = new Log(dirname(__FILE__) . '/../temp/test.log');
        $log->message('Should write this to a file');
        $this->assertTrue(file_exists(dirname(__FILE__) . '/../temp/test.log'));
    }
}
?>

我得到的错误是:

代码语言:javascript
复制
Deprecated: Assigning the return value of new by reference is deprecated in C:\wamp\www\external\simpletest\simpletest\unit_tester.php  on line 74

Deprecated: Assigning the return value of new by reference is deprecated in C:\wamp\www\external\simpletest\simpletest\unit_tester.php on line 89
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-04 04:28:19

"Deprecated“意味着做了一些过时的事情,可能不会被未来的php版本所支持。它不应该是有害的,但应该由最简单的开发人员来处理。你有没有下载最新版本的simpletest?如果想要理解,请看一下第74行和第89行的unit_tester.php。

票数 2
EN

Stack Overflow用户

发布于 2010-10-28 18:17:34

而不是关闭所有的错误,只需要switch off deprecation warnings。另一种方法是对所有最简单的文件进行查找和替换:查找"&new“并替换为"new”。new by reference (&new)仅仅是deprecated in PHP5.3,所以希望在下一个SimpleTest发行版中可以解决这个问题。

票数 1
EN

Stack Overflow用户

发布于 2010-07-04 04:38:31

在运行单元测试时,您确定使用的是5.2,而不是5.3吗?我似乎记得在5.3下运行的PEAR包中看到过这些错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3172619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档