默认情况下将$ _POST传递给类构造函数

时间:2014-01-16 00:43:17

标签: php class constructor

例如,使用此代码时:

function __construct($args = '') {

如果我使用$obj = new class_name($_POST)实例化该类,但是当我使用:

时,它可以正常工作
function __construct($args = $_POST) {

我收到意外的T_VARIABLE错误。有什么原因导致这种情况无效吗?

2 个答案:

答案 0 :(得分:4)

  

默认值必须是常量表达式,而不是(例如)变量,类成员或函数调用。

http://www.php.net/manual/en/functions.arguments.php

你可以使用这样的东西

function __construct(array $args = null) {
    if (is_null($args))
        $args = $_POST;

答案 1 :(得分:0)

最好在构造函数中使用它,可以在Objects中访问$ _POST。