.. _ruleset-suggestions: Suggestions +++++++++++ This ruleset focuses on possibly better syntax than the one currently used. Those may be code modernization, alternatives, more efficient solutions, or simply left over from older versions. Total : 128 analysis * :ref:`while(list()-=-each())` * :ref:`function-subscripting,-old-style` * :ref:`**-for-exponent` * :ref:`too-many-children` * :ref:`empty-with-expression` * :ref:`list()-may-omit-variables` * :ref:`unreachable-code` * :ref:`overwritten-exceptions` * :ref:`return-with-parenthesis` * :ref:`strict-comparison-with-booleans` * :ref:`logical-should-use-symbolic-operators` * :ref:`could-use-self` * :ref:`preprocess-arrays` * :ref:`repeated-print()` * :ref:`echo-with-concat` * :ref:`no-parenthesis-for-language-construct` * :ref:`unused-interfaces` * :ref:`avoid-substr()-one` * :ref:`php7-dirname` * :ref:`preg\_match\_all()-flag` * :ref:`already-parents-interface` * :ref:`could-use-\_\_dir\_\_` * :ref:`should-use-coalesce` * :ref:`could-use-alias` * :ref:`drop-else-after-return` * :ref:`unitialized-properties` * :ref:`should-use-array\_column()` * :ref:`randomly-sorted-arrays` * :ref:`no-return-used` * :ref:`could-make-a-function` * :ref:`use-session\_start()-options` * :ref:`mismatched-ternary-alternatives` * :ref:`isset-multiple-arguments` * :ref:`should-use-foreach` * :ref:`substring-first` * :ref:`use-list-with-foreach` * :ref:`slice-arrays-first` * :ref:`parent-first` * :ref:`never-called-parameter` * :ref:`should-use-array\_filter()` * :ref:`reuse-existing-variable` * :ref:`should-use-math` * :ref:`could-use-compact` * :ref:`could-use-array\_fill\_keys` * :ref:`use-recursive-count()` * :ref:`too-many-parameters` * :ref:`should-preprocess-chr()` * :ref:`possible-increment` * :ref:`drop-substr-last-arg` * :ref:`one-if-is-sufficient` * :ref:`could-use-array\_unique` * :ref:`nonexistent-variable-in-compact()` * :ref:`should-use-operator` * :ref:`could-be-static-closure` * :ref:`use-is\_countable` * :ref:`detect-current-class` * :ref:`avoid-real` * :ref:`use-json\_decode()-options` * :ref:`closure-could-be-a-callback` * :ref:`add-default-value` * :ref:`named-regex` * :ref:`could-use-try` * :ref:`use-basename-suffix` * :ref:`don't-loop-on-yield` * :ref:`should-have-destructor` * :ref:`directly-use-file` * :ref:`isset()-on-the-whole-array` * :ref:`multiple-usage-of-same-trait` * :ref:`array\_key\_exists()-speedup` * :ref:`should-deep-clone` * :ref:`multiple-unset()` * :ref:`implode-one-arg` * :ref:`useless-default-argument` * :ref:`no-need-for-get\_class()` * :ref:`substr-to-trim` * :ref:`complex-dynamic-names` * :ref:`use-datetimeimmutable-class` * :ref:`set-aside-code` * :ref:`use-array-functions` * :ref:`use-the-case-value` * :ref:`should-use-url-query-functions` * :ref:`too-long-a-block` * :ref:`static-global-variables-confusion` * :ref:`possible-alias-confusion` * :ref:`too-much-indented` * :ref:`avoid-compare-typed-boolean` * :ref:`abstract-away` * :ref:`large-try-block` * :ref:`cancel-common-method` * :ref:`useless-typehint` * :ref:`could-use-promoted-properties` * :ref:`use-get\_debug\_type()` * :ref:`use-str\_contains()` * :ref:`unused-exception-variable` * :ref:`searching-for-multiple-keys` * :ref:`long-preparation-for-throw` * :ref:`no-static-variable-in-a-method` * :ref:`declare-static-once` * :ref:`could-use-match` * :ref:`could-use-null-safe-object-operator` * :ref:`this-could-be-iterable` * :ref:`multiple-similar-calls` * :ref:`could-be-ternary` * :ref:`use-file-append` * :ref:`could-use-existing-constant` * :ref:`could-use-array\_sum()` * :ref:`too-many-stringed-elseif` * :ref:`could-be-spaceship` * :ref:`throw-raw-exceptions` * :ref:`lowered-access-level` * :ref:`could-set-property-default` * :ref:`could-be-enumeration` * :ref:`magic-method-returntype-is-restricted` * :ref:`could-be-abstract-method` * :ref:`could-use-class-operator` * :ref:`could-use-namespace-magic-constant` * :ref:`json\_encode()-without-exceptions` * :ref:`class-could-be-readonly` * :ref:`use-str\_ends\_with()` * :ref:`use-str\_starts\_with()` * :ref:`blind-variable-used-beyond-loop` * :ref:`could-be-array\_combine()` * :ref:`multiline-expressions` * :ref:`could-cast-to-array` * :ref:`check-after-null-safe-operator` * :ref:`could-use-strcontains()` * :ref:`could-drop-variable` * :ref:`could-be-readonly-property` Specs _____ +--------------+-------------------------------------------------------------------------------------------------------------------------+ | Short name | Suggestions | +--------------+-------------------------------------------------------------------------------------------------------------------------+ | Available in | `Entreprise Edition `_, `Exakat Cloud `_ | +--------------+-------------------------------------------------------------------------------------------------------------------------+ | Reports | :ref:`report-diplomat`, :ref:`report-ambassador` | +--------------+-------------------------------------------------------------------------------------------------------------------------+