-
-
Notifications
You must be signed in to change notification settings - Fork 5.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Contributing] [Standards] Added entry for identical comparison #5403
Changes from 2 commits
b0055ed
fc350ca
ef30569
b0a441f
b648da8
c073821
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -167,6 +167,29 @@ Service Naming Conventions | |
|
||
* A group name uses the underscore notation. | ||
|
||
.. _contributing-code-standards-comparisons: | ||
|
||
Comparisons | ||
----------- | ||
|
||
Use `identical comparison`_ when the expected value must match a specific type: | ||
|
||
instead of: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. should be removed There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good catch @xabbuh, removed. |
||
|
||
.. code-block:: php | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. you can omit this if you use a double colon at the end of the line before There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I saw that syntax before, but what about specific code highlighting for PHP? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. PHP is the default syntax highlighting. So it's used in that case. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Updated. |
||
|
||
if (1 == $integerExpected) { | ||
// ... | ||
} | ||
|
||
it should be: | ||
|
||
.. code-block:: php | ||
|
||
if (1 === $integerExpected) { | ||
// ... | ||
} | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What about using one code block for this to make it more compact? Always use `identical comparison`_ unless you need type juggling::
// use
if (1 === $integerExcepted) {
// ...
}
// instead of
if (1 == $integerExcepted) {
// ...
} There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Seems good to me @xabbuh. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Updated. |
||
|
||
Documentation | ||
------------- | ||
|
||
|
@@ -186,3 +209,4 @@ License | |
.. _`PSR-1`: http://www.php-fig.org/psr/psr-1/ | ||
.. _`PSR-2`: http://www.php-fig.org/psr/psr-2/ | ||
.. _`PSR-4`: http://www.php-fig.org/psr/psr-4/ | ||
.. _`identical comparison`: https://php.net/manual/en/language.operators.comparison.php |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would go further and recommend to always use the identical comparison unless you have a strong reason to not do that. @wouterj @xabbuh what do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I asked the same previously (which disappeared when moving the note to a different page)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the original note from @stof about identical comparison.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree, should be something like "Always use strict comparison unless you need type juggling".