Until this gets fixed instead of declaring the properties public you can use
a encode method like this:
<?
class c1
{
protected $p1 = 'aa';
public $p2 = 'bb';
public function enc()
    {
    //print $this->p1;
    return json_encode(get_object_vars($this));//this will encode the
protected var
    }
}
$o = new c1;
print $o->enc();
?>

On Thu, Oct 9, 2008 at 3:54 PM, Jarismar Chaves da Silva <
[EMAIL PROTECTED]> wrote:

> Hi internals,
>
>  Does anyone knows why json_encode ignores protected/public class members ?
>  I've searching about it on documentation an mailing lists but found
> nothing but workarounds.
>  Until now I'm forced to change my classes to use public members when I
> need to send a PHP object on e.g. AJAX responses. It would be nice if
> json_encode also send those attributes or at least have a parameter to
> whether send non-public attributes or not.
>
> Thanks in advance.
> Jaris.
>
> --
>
> *Jarismar Chaves da Silva, M.Sc.*
>
> *ADP**Labs** Brazil**
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> http://www.adp.com
>
>

Reply via email to