这行代码是创建一个拇指对象,但在php 5.3.x中有警告
“不推荐使用引用分配新的返回值”
if (FALSE === ($thumb =& new thumbnail_party(500, 500, '#FFFFFF', 'jpg', CACHE_PATH))) {
如何在没有任何警告的情况下重写它?
THX
答案 0 :(得分:2)
删除&不再需要字符引用。它默认已通过引用传递。
答案 1 :(得分:1)
if(false === ($thumb = new thumbnail_party(500, 500, '#FFFFFF', 'jpg', CACHE_PATH))){
// ...
}
但是,new
运算符永远不会产生false
,因此检查基本没有意义。
如果thumbnail_party
是您可以控制的类,请考虑从构造函数中抛出异常:
try{
$thumb = new thumbnail_part(/* ... */);
}catch(Exception $exception){
// failed to create $thumb
}
答案 2 :(得分:0)
在php 5.3.x中,您无需指定&
,在此处找到了答案:http://thinkinglemur.com/index.php/2009/07/assigning-the-return-value-of-new-by-reference-is-deprecated/
所以你可以使用它:
(FALSE === ($thumb = new thumbnail_party(500, 500, '#FFFFFF', 'jpg', CACHE_PATH))) {