one issue related to ArrayObject in php
<pre><code> &lt;?php
    class ExtendedArrayObject extends ArrayObject {
        private $_array;
        public function __construct()
        {
            if (is_array(func_get_arg(0)))
                $this-&gt;_array = func_get_arg(0);
            else
                $this-&gt;_array = func_get_args();
            parent::__construct($this-&gt;_array);
        }
    }
    $newArray = new ExtendedArrayObject(array(1,2,3,4,5,6));
   ...
    ?&gt;
</code></pre>

<p>Above code is taken from a book. </p>

<p>Question:
what is the usage of this line: <code>else $this-&gt;_array = func_get_args();</code>? why we need to set up a <code>if...else...</code>here?</p>
