Skip to content

Commit b6660e1

Browse files
authored
Merge pull request #304 from derrabus/improvement/allow-string-interpolation
String interpolation: don't suggest `sprintf()`
2 parents 8c3c932 + c140fc0 commit b6660e1

8 files changed

+39
-22
lines changed

lib/Doctrine/ruleset.xml

-3
Original file line numberDiff line numberDiff line change
@@ -599,9 +599,6 @@
599599
</rule>
600600
<!-- Forbid strings in `"` unless necessary -->
601601
<rule ref="Squiz.Strings.DoubleQuoteUsage"/>
602-
<rule ref="Squiz.Strings.DoubleQuoteUsage.ContainsVar">
603-
<message>Variable "%s" not allowed in double quoted string; use sprintf() or concatenation instead</message>
604-
</rule>
605602
<!-- Forbid braces around string in `echo` -->
606603
<rule ref="Squiz.Strings.EchoedStrings"/>
607604
<!-- Forbid spaces in type casts -->

tests/expected_report.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ tests/input/semicolon_spacing.php 3 0
4040
tests/input/single-line-array-spacing.php 5 0
4141
tests/input/spread-operator.php 6 0
4242
tests/input/static-closures.php 1 0
43-
tests/input/strings.php 1 0
43+
tests/input/strings.php 3 0
4444
tests/input/superfluous-naming.php 11 0
4545
tests/input/test-case.php 8 0
4646
tests/input/trailing_comma_on_array.php 1 0
@@ -52,9 +52,9 @@ tests/input/use-ordering.php 1 0
5252
tests/input/useless-semicolon.php 2 0
5353
tests/input/UselessConditions.php 21 0
5454
----------------------------------------------------------------------
55-
A TOTAL OF 451 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
55+
A TOTAL OF 453 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
5656
----------------------------------------------------------------------
57-
PHPCBF CAN FIX 374 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
57+
PHPCBF CAN FIX 375 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
5858
----------------------------------------------------------------------
5959

6060

tests/fixed/strings.php

+10
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,13 @@
77
$doc = <<<'TEXT'
88
text without special chars
99
TEXT;
10+
11+
$interpolated = <<<TEXT
12+
HEREDOC with interpolation like $doc is fine.
13+
TEXT;
14+
15+
echo 'This should appear in single quotes.';
16+
17+
echo "This string\tmay appear\nin double quotes.";
18+
19+
echo "String interpolation like $doc should be avoided.";

tests/input/strings.php

+10
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,13 @@
77
$doc = <<<TEXT
88
text without special chars
99
TEXT;
10+
11+
$interpolated = <<<TEXT
12+
HEREDOC with interpolation like $doc is fine.
13+
TEXT;
14+
15+
echo "This should appear in single quotes.";
16+
17+
echo "This string\tmay appear\nin double quotes.";
18+
19+
echo "String interpolation like $doc should be avoided.";

tests/php72-compatibility.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ index d1e1fad..ea3b611 100644
5555
-tests/input/UselessConditions.php 21 0
5656
+tests/input/UselessConditions.php 20 0
5757
----------------------------------------------------------------------
58-
-A TOTAL OF 451 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
59-
+A TOTAL OF 404 ERRORS AND 0 WARNINGS WERE FOUND IN 44 FILES
58+
-A TOTAL OF 453 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
59+
+A TOTAL OF 406 ERRORS AND 0 WARNINGS WERE FOUND IN 44 FILES
6060
----------------------------------------------------------------------
61-
-PHPCBF CAN FIX 374 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
62-
+PHPCBF CAN FIX 327 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
61+
-PHPCBF CAN FIX 375 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
62+
+PHPCBF CAN FIX 328 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
6363
----------------------------------------------------------------------
6464

6565

tests/php73-compatibility.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ index d1e1fad..9a78bc1 100644
5656
-tests/input/UselessConditions.php 21 0
5757
+tests/input/UselessConditions.php 20 0
5858
----------------------------------------------------------------------
59-
-A TOTAL OF 451 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
60-
+A TOTAL OF 406 ERRORS AND 0 WARNINGS WERE FOUND IN 45 FILES
59+
-A TOTAL OF 453 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
60+
+A TOTAL OF 408 ERRORS AND 0 WARNINGS WERE FOUND IN 45 FILES
6161
----------------------------------------------------------------------
62-
-PHPCBF CAN FIX 374 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
63-
+PHPCBF CAN FIX 329 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
62+
-PHPCBF CAN FIX 375 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
63+
+PHPCBF CAN FIX 330 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
6464
----------------------------------------------------------------------
6565

6666

tests/php74-compatibility.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,11 @@ index d1e1fad..ed67841 100644
5454
-tests/input/UselessConditions.php 21 0
5555
+tests/input/UselessConditions.php 20 0
5656
----------------------------------------------------------------------
57-
-A TOTAL OF 451 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
58-
+A TOTAL OF 415 ERRORS AND 0 WARNINGS WERE FOUND IN 45 FILES
57+
-A TOTAL OF 453 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
58+
+A TOTAL OF 417 ERRORS AND 0 WARNINGS WERE FOUND IN 45 FILES
5959
----------------------------------------------------------------------
60-
-PHPCBF CAN FIX 374 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
61-
+PHPCBF CAN FIX 338 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
60+
-PHPCBF CAN FIX 375 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
61+
+PHPCBF CAN FIX 339 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
6262
----------------------------------------------------------------------
6363

6464

tests/php80-compatibility.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,11 @@ index d1e1fad..71022c4 100644
2929
tests/input/useless-semicolon.php 2 0
3030
tests/input/UselessConditions.php 21 0
3131
----------------------------------------------------------------------
32-
-A TOTAL OF 451 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
33-
+A TOTAL OF 445 ERRORS AND 0 WARNINGS WERE FOUND IN 47 FILES
32+
-A TOTAL OF 453 ERRORS AND 0 WARNINGS WERE FOUND IN 48 FILES
33+
+A TOTAL OF 447 ERRORS AND 0 WARNINGS WERE FOUND IN 47 FILES
3434
----------------------------------------------------------------------
35-
-PHPCBF CAN FIX 374 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
36-
+PHPCBF CAN FIX 368 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
35+
-PHPCBF CAN FIX 375 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
36+
+PHPCBF CAN FIX 369 OF THESE SNIFF VIOLATIONS AUTOMATICALLY
3737
----------------------------------------------------------------------
3838

3939

0 commit comments

Comments
 (0)