Skip to content

Squiz/EmbeddedPhp doesn't examine code using short open echo tag #27

Closed
@jrfnl

Description

@jrfnl

Repost from squizlabs/PHP_CodeSniffer#3705:

Given this code:

<?php   echo $var   ?>

Running the Squiz.PHP.EmbeddedPhp sniff over it results in:

-------------------------------------------------------------------------------------------------------------
FOUND 3 ERRORS AFFECTING 1 LINE
-------------------------------------------------------------------------------------------------------------
 1 | ERROR | [x] Expected 1 space after opening PHP tag; 3 found
   |       |     (Squiz.PHP.EmbeddedPhp.SpacingAfterOpen)
 1 | ERROR | [x] Inline PHP statement must end with a semicolon (Squiz.PHP.EmbeddedPhp.NoSemicolon)
 1 | ERROR | [x] Expected 1 space before closing PHP tag; 3 found
   |       |     (Squiz.PHP.EmbeddedPhp.SpacingBeforeClose)
-------------------------------------------------------------------------------------------------------------
PHPCBF CAN FIX THE 3 MARKED SNIFF VIOLATIONS AUTOMATICALLY
-------------------------------------------------------------------------------------------------------------

... while running the same sniff over the below code doesn't yield any errors:

<?=   $var   ?>

Questions

  1. Should the T_OPEN_TAG_WITH_ECHO token be added to the sniff ?
  2. If so and as the sniff would now start acting on more files, should the error codes for issues found in embedded PHP statements using short open echo tags be different ?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions