What is unexpected T_VARIABLE in PHP?


Question

I get this PHP error:

Parse error: syntax error, unexpected T_VARIABLE

From this line:

$list[$i][$docinfo['attrs']['@groupby']] = $docinfo['attrs']['@count'];

Is there anything wrong with this line?

1
71
8/7/2014 8:24:48 PM

Accepted Answer

There might be a semicolon or bracket missing a line before your pasted line. It seems fine to me, every string is allowed as array index.

172
8/7/2014 8:09:04 PM

It could be some other line as well, PHP is not always that exact.

Probably you are just missing a semicolon on previous line.

How to reproduce this error, put this in a file called a.php:

<?php
  $a = 5
  $b = 7;        //error happens here.
  print $b;
?>

Run it:

eric@dev ~ $ php a.php

PHP Parse error:  syntax error, unexpected T_VARIABLE in 
/home/el/code/a.php on line 3

Explanation:

The PHP parser converts your program to a series of tokens. A T_VARIABLE is a Token of type VARIABLE. When the parser processes tokens, it tries to make sense of them, and throws errors if it receives a variable where none is allowed.

In the simple case above with variable $b, the parser tried to process this:

$a = 5 $b = 7;

The php parser looks at the $b after the 5 and says "that is unexpected".


Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon