T_PAAMAYIM_NEKUDOTAYIM PHP error
Ok so i've hit this nasty php error T_PAAMAYIM_NEKUDOTAYIM that sounded like a language from another planet for me (found out that it's Hebrew for "missing double dots")
The problem is that with static class functions you can't do dynamic loading (or at least it didn't work for me)
So while this
- $module = $_GET['module']
- $stuff = new $module();
- $stuff->data;
works, you can't do$module::data()
even if the name of the module is the name of the class.

Comments
Code Monkey (not verified)
Tue, 04/14/2009 - 19:00
Permalink
try this
try this way
call_user_func(array($module, 'data'));
Code Monkey (not verified)
Mon, 01/18/2010 - 10:46
Permalink
"T_PAAMAYIM_NEKUDOTAYIM"
"T_PAAMAYIM_NEKUDOTAYIM" means double colon in Hebrew.
well "Zend" are Israeli guys...
Code Monkey (not verified)
Tue, 05/18/2010 - 05:03
Permalink
Got same error did you find
Got same error did you find the solution
CoolGoose
Tue, 05/18/2010 - 12:12
Permalink
None, it seems you can't do
None, it seems you can't do static calls.
Code Monkey (not verified)
Wed, 08/04/2010 - 11:54
Permalink
Hi! I got
Hi!
I got T_PAAMAYIM_NEKUDOTAYIM error by typing _$REQUEST instead of the correct name! Check your spelling :-)
Code Monkey (not verified)
Wed, 10/27/2010 - 13:31
Permalink
With PHP 5.3 this is solved,
With PHP 5.3 this is solved, and you can do "dynamic" static calls like in
$var = $classname::$functionname();
Workaround before PHP 5.3 would be eval('$var = '.$classname.'::'.$functionname.'();');
Code Monkey (not verified)
Sat, 07/30/2011 - 17:04
Permalink
I'm currenly using PHP 5.3.5
I'm currenly using PHP 5.3.5 and I have just got the same meaningless error. It might have been resolved in some aspects but it still lives.
As far as I understand, this error is shown when internal error-checking mechanizm cant decide on the error because I had the same error many times in many diifferent situations. The last occurence was on an recursive data access to orginize arrays dynamicly. I am not sure if it is really a problem.
I had it in a code like this
$x['a']['a'] = "a";
$x['a']['b'] = "b";
$x['a']['c'] = "c";
$x['b']['a'] = "d";
$x['b']['b'] = "e";
$x['b']['c'] = "f";
......
$a = &$x['a]; // to access without copying
$a works fine, but when I tried to add an element to point to another element in $x, but not in $x['a'], T_PAAMAYIM_NEKUDOTAYIM happened
eg;
$a['b'] = &$x['b']['b'];
T_PAAMAYIM_NEKUDOTAYIM
Code Monkey (not verified)
Wed, 01/12/2011 - 04:08
Permalink
Nice explanation.Well we
Nice explanation.Well we actually learned a lot from everyday
Pages
Add new comment