syntax error, unexpected '$config' (T_VARIABLE) in Silverstripe - php

I have create a class GalleryImage In SilverStripe.In that I am creating a config object for the grid field, but it gives error syntax error, unexpected '$config' (T_VARIABLE). How to solve this ?
$config = GridFieldConfig::create();

Chances are the problem is on the line (or lines) before. For example this:
$myvar=1;
$config = GridFieldConfig::create();
won't cause a syntax error (of the type you're seeing here) but:
$myvar=1
$config = GridFieldConfig::create();
(note the missing semi-colon) will cause an error like you are getting.
It may not be a missing semi-colon, but check the line before the one giving you the error.

Related

How to fix Syntax error, unexpected '' (T_STRING)?

The error that I am receiving is this: Parse error: syntax error, unexpected 'TokenType' (T_STRING) in C:\Program Files\Ampps\www\cs5339\lepichardo\4339_f22_assignment1\TokenType.php on line 2. To be clear, both files are php, and they both are in the same director. The code below is where I include the enum TokenType so that I would be able to use it.
<?php
include 'TokenType.php'
?>
The TokenType.php looks like this
<?php
enum TokenType{
case INT;
case STRING;
case COMMA;
}
?>
As far as I now, this should be fine, but gives me that error in that particular line.
If there is any other way to declare and imlpement the enum variable in php I would like to be explained to how to. Thanks in advance!!!
enums are only available in PHP 8.1+. The error suggests you are running PHP 7.
Here's some results of running the following code using various PHP versions (using https://3v4l.org/qHU4f)
<?php
enum TokenType{
case INT;
case STRING;
case COMMA;
}
echo 'hello world';
Output for 8.1.0 - 8.1.11, 8.2rc1 - rc3
hello world
Output for 8.0.1 - 8.0.24
Parse error: syntax error, unexpected identifier "TokenType" in /in/qHU4f on line 2
Process exited with code 255.
Output for 7.4.0 - 7.4.32
Parse error: syntax error, unexpected 'TokenType' (T_STRING) in /in/qHU4f on line 2
Process exited with code 255.
As you can see by the last result, unexpected 'TokenType' (T_STRING) is an error you would receive in PHP 7

PHP PDO throwing syntax error, need feedback

I need a little feedback on why the following is throwing a SYNTAX error of : "unexpected '[', expecting ')'" , it would be the second line in the code below:
if($deleteBeforeInsertFieldKey!==false){
if($deleteQry->execute([$deleteBeforeInsertFieldKey=>$row[$deleteBeforeInsertFieldKey]])===false){
throw new \Exception('There was a problem deleting a row prior to insert.');
}
}

Trying to use HUE api but getting php syntax error

I am currently trying to use the https://github.com/muesli/huephp to control my lights through PHP but I am running into a syntax problem.
Here is the line in huecli.php that I am getting a syntax error on where [...
Here is the actual error: "Parse error: syntax error, unexpected '[' "
$hue->lights()[$light]->setLight( $command );
There are more errors but it seems the [$light] is causing the problem. I haven't worked with this kind of syntax before so any help is appreciated!
You are probably not running PHP 5.4+ which is what is required to use Array Dereferencing. To use this code it must be modified as so:
$hue_lights = $hue->lights();
$hue_lights[$light]->setLight( $command );

IPBoard Error Parse error: syntax error, unexpected T_STRING

I have been having this error with IPBoard when trying to install a skin/theme. I get this message when I apply it to my forum:
Parse error: syntax error, unexpected T_STRING in /home/a7952789/public_html/forum/cache/skin_cache/cacheid_7/skin_global.php on line 83
So I decided to check It out I re-parsed it and it said no errors in CODE. here is the exact line of code:
$this->functionData['globalTemplate'][$count_3b65c7bc63b10c5a7f84294eb9b75dd2]['array_header_items'] = $array header_items;
$array header_items doesn't make any sense. It might be a typo for $array_header_items, although it's hard to guess what it is supposed to be.

What is unexpected T_VARIABLE in PHP?

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?
There might be a semicolon or bracket missing a line before your pasted line.
It seems fine to me; every string is allowed as an array index.
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".
In my case it was an issue of the PHP version.
The .phar file I was using was not compatible with PHP 5.3.9. Switching interpreter to PHP 7 did fix it.

Categories