Почему нельзя сохранять сериализованные объекты в const Константы?

<?php
    const FOOBAR = "Foo"; // Works.
    const FOOBAR = array("Foo", "Bar"); // Doesn't work.  Makes sense.
    const FOOBAR = serialize(array("Foo", "Bar")); // Doesn't work.  Okay.  :\

    define("FOOBAR", serialize(array("Foo", "Bar"))); // Works!  The heck?
 ?>

Ошибка синтаксического анализа PHP: синтаксическая ошибка, неожиданный '(', ожидающий ',' или ';'

Почему константы могут быть присвоены сериализованным объектам, если они объявлены с помощью define ( ) , но не с ключевым словом const ? Что мне здесь не хватает?

(Протестировано с 5.3.5-1ubuntu7.2 .)

0
задан Maxpm 19 August 2011 в 03:27
поделиться