php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #22501 Problem referencing static var of class inside a namespace
Submitted: 2003-03-02 01:48 UTC Modified: 2003-05-27 01:00 UTC
From: ben at pirionsystems dot com dot au Assigned:
Status: No Feedback Package: Scripting Engine problem
PHP Version: 5CVS-2003-03-02 (dev) OS: Windows XP
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: ben at pirionsystems dot com dot au
New email:
PHP Version: OS:

 

 [2003-03-02 01:48 UTC] ben at pirionsystems dot com dot au
Hi!

I've found an odd problem that looks like just a problem with the parser syntax.  The following example will show it:

<?php

namespace Test:Test2 {
class Test3 {
static $blah = "qwerty";
}
}

// this works as expected by printing out "qwerty";
print "Test:Test2::Test3::\$blah: ".Test:Test2::Test3::$blah."<br>\n";


namespace Test4 {
class Test5 {
static $blah = "asdf";
}
}

// this causes a parse error: unexpected T_PAAMAYIM_NEKUDOTAYIM
print "Test4::Test5::\$blah: ".Test4::Test5::$blah."<br>\n";

?>

So, if the namespace name has a : in it, then you can reference variables within a class contained within the namespace, otherwise you can't. So, assuming that the : doesn't do anything special, it looks like a problem with the flex/yacc/whatever it is parser and the engine should cope with it.

I think that's everything.

Ben

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2003-04-18 18:30 UTC] thekid at thekid dot de
Cannot reproduce with current PHP5:

thekid@friebes:~/devel/php/php5 > cat | php5
<?php
  namespace Foo {
    class Bar {
      static $x= 'y';
    }
  }

  var_dump(Foo::Bar::$x);
?> 
string(1) "y"
 [2003-05-27 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over 2 weeks, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Dec 21 15:01:29 2024 UTC