|
21 | 21 | use PHPParser_Error;
|
22 | 22 | use PHPParser_Lexer_Emulative;
|
23 | 23 | use PHPParser_Node;
|
| 24 | +use PHPParser_Node_Expr_Concat; |
24 | 25 | use PHPParser_Node_Expr_Exit;
|
25 | 26 | use PHPParser_Node_Expr_FuncCall;
|
26 | 27 | use PHPParser_Node_Expr_Print;
|
27 | 28 | use PHPParser_Node_Expr_Variable;
|
| 29 | +use PHPParser_Node_Scalar_String; |
28 | 30 | use PHPParser_Node_Stmt_Class;
|
29 | 31 | use PHPParser_Node_Stmt_Echo;
|
30 | 32 | use PHPParser_Node_Stmt_If;
|
@@ -358,6 +360,16 @@ private function validateFunctionNames(PHPParser_Node $node)
|
358 | 360 | // If function name is a variable.
|
359 | 361 | $name = (string)$node->name->name;
|
360 | 362 | }
|
| 363 | + else if ($node->name instanceof PHPParser_Node_Expr_Concat) |
| 364 | + { |
| 365 | + // Only test if both are a string |
| 366 | + // This mean that if a user works around this test he can do so, but otherwise we will |
| 367 | + // need to parse variables and stuff. |
| 368 | + if ($node->left instanceof PHPParser_Node_Scalar_String && $node->right instanceof PHPParser_Node_Scalar_String) |
| 369 | + { |
| 370 | + $name = $node->left->value . $node->right->value; |
| 371 | + } |
| 372 | + } |
361 | 373 | else
|
362 | 374 | {
|
363 | 375 | $name = (string)$node->name;
|
@@ -389,6 +401,16 @@ private function validateMethodCalls(PHPParser_Node $node) {
|
389 | 401 | // If function name is a variable.
|
390 | 402 | $name = (string)$node->name->name;
|
391 | 403 | }
|
| 404 | + else if ($node->name instanceof PHPParser_Node_Expr_Concat) |
| 405 | + { |
| 406 | + // Only test if both are a string |
| 407 | + // This mean that if a user works around this test he can do so, but otherwise we will |
| 408 | + // need to parse variables and stuff. |
| 409 | + if ($node->left instanceof PHPParser_Node_Scalar_String && $node->right instanceof PHPParser_Node_Scalar_String) |
| 410 | + { |
| 411 | + $name = $node->left->value . $node->right->value; |
| 412 | + } |
| 413 | + } |
392 | 414 | else
|
393 | 415 | {
|
394 | 416 | $name = (string)$node->name;
|
|
0 commit comments