Ok, its still the same 5.2.0 problem, I'll get with gavin and see what solutions he has found to this bug in PHP.

Essentially, the guys as php decided to start returning things by value instead of references (from what I understand), which means Class::__set($n,$v); calls when called from something like $s->property[] = something, the part before the [] needs to be dereferenced.. Which they used to do, and now are not.

Will get back later with some results, even if its a note that says its not possible in PHP 5.2.0

-Ralph

Philip Iezzi wrote:
Thanks Ralph

It won't work yet on PHP 5.2.0 yet.
On a Windows box I'm getting the following notice:

Notice: Indirect modification of overloaded property Zend_Session::$default has 
no effect in FlashMessage.php on line 87

On a Unix box I'm not getting any notice at all, hasMessages() returns true and 
getMessages() is kinda empty...
FlashMessage Object ( [_namespace:protected] => default )

On both systems I have set error_reporting(E_ALL)
pretty weird.

Cheers,
philip

Ralph Schindler wrote:
Philip Iezzi wrote:
Notice: Indirect modification of overloaded property
Zend_Session::$default has no effect in FlashMessage.php on line 42

line 42 (in add()):

self::$_session->{$namespace}[] = $message;
It didn't work with Matthew's hack either...
http://weierophinney.net/matthew/archives/131-Overloading-arrays-in-PHP-5.2.0.html


I did fix and tested and commented..

http://svn.ralphschindler.com/repo/ZendFramework/library/FlashMessage.php

please let me konw what you think.  This is a standalone version of
FlashMessaging.. Ideally, there are aspects of this that should be
dispatched from other areas, specifically Zend_Controller_Action, and
from Zend_View_Helper..

But I will address that within the next 2 days as I propose
Zend_Controller_Action_Helper.  Having a component like that would allow
for an easier and more seemless integration of FlashMessageing and other
such related composite components.

Also, I am pretty sure this shoudl work even in PHP 5.2.0* even due to
its brokenness.

Cheers, and let me know what you think!

-ralph



Reply via email to