Edit report at https://bugs.php.net/bug.php?id=54290&edit=1

 ID:                 54290
 Comment by:         hanskrentel at yahoo dot de
 Reported by:        frederic dot hardy at mageekbox dot net
 Summary:            Class which extends from \SplFileObject is not
                     serializable
 Status:             Open
 Type:               Bug
 Package:            SPL related
 PHP Version:        5.3.5
 Block user comment: N
 Private report:     N

 New Comment:

According to the code it is intended that you can not serialize it.

Which can make sense as the file itself already is a serialized form 
of the object it represents. However different to DOMDocument where
serialization wouldn't make much sense (XML is a serialization 
already), in the SplFileObject case, Serialization is *explicitly* 
forbidden. The internal state of the object can not be preserved by
serialization, therefore it is just not possible.

This ticket can be closed as a duplicate of #46646 in my eyes or it 
needs to be turned into a feature-request, so that implementing 
Serializable might become possible - like it is with DOMDocument.


Previous Comments:
------------------------------------------------------------------------
[2011-03-21 19:01:41] jinmoku at hotmail dot com

see bug : 
http://bugs.php.net/bug.php?id=46646
http://svn.php.net/viewvc/php/php-src/trunk/ext/spl/spl_directory.c?r1=271751&r2=271752

;)

------------------------------------------------------------------------
[2011-03-17 11:04:21] frederic dot hardy at mageekbox dot net

Description:
------------
It's impossible to implements \Serializable interface on a class which extends 
from \SplFileObject.

Test script:
---------------
<?php

namespace php\bugs\splFileObject;

class SerializableFileObject extends \SplFileObject implements \Serializable
{
  public function serialize()
  {
  }

  public function unserialize($serialized)
  {
  }
}

?>

Expected result:
----------------
Nothing.

Actual result:
--------------
PHP Fatal error:  Class php\bugs\splFileObject\Serializable could not implement 
interface Serializable in Unknown on line 0


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=54290&edit=1

Reply via email to