| Conditions | 1 |
| Paths | 1 |
| Total Lines | 63 |
| Code Lines | 59 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php |
||
| 57 | public function persianSlug(string $string, string $separator = '-') |
||
| 58 | { |
||
| 59 | $_transliteration = array( |
||
| 60 | '/ä|æ|ǽ/' => 'ae', |
||
| 61 | '/ö|œ/' => 'oe', |
||
| 62 | '/ü/' => 'ue', |
||
| 63 | '/Ä/' => 'Ae', |
||
| 64 | '/Ü/' => 'Ue', |
||
| 65 | '/Ö/' => 'Oe', |
||
| 66 | '/À|Á|Â|Ã|Å|Ǻ|Ā|Ă|Ą|Ǎ/' => 'A', |
||
| 67 | '/à|á|â|ã|å|ǻ|ā|ă|ą|ǎ|ª/' => 'a', |
||
| 68 | '/Ç|Ć|Ĉ|Ċ|Č/' => 'C', |
||
| 69 | '/ç|ć|ĉ|ċ|č/' => 'c', |
||
| 70 | '/Ð|Ď|Đ/' => 'D', |
||
| 71 | '/ð|ď|đ/' => 'd', |
||
| 72 | '/È|É|Ê|Ë|Ē|Ĕ|Ė|Ę|Ě/' => 'E', |
||
| 73 | '/è|é|ê|ë|ē|ĕ|ė|ę|ě/' => 'e', |
||
| 74 | '/Ĝ|Ğ|Ġ|Ģ/' => 'G', |
||
| 75 | '/ĝ|ğ|ġ|ģ/' => 'g', |
||
| 76 | '/Ĥ|Ħ/' => 'H', |
||
| 77 | '/ĥ|ħ/' => 'h', |
||
| 78 | '/Ì|Í|Î|Ï|Ĩ|Ī|Ĭ|Ǐ|Į|İ/' => 'I', |
||
| 79 | '/ì|í|î|ï|ĩ|ī|ĭ|ǐ|į|ı/' => 'i', |
||
| 80 | '/Ĵ/' => 'J', |
||
| 81 | '/ĵ/' => 'j', |
||
| 82 | '/Ķ/' => 'K', |
||
| 83 | '/ķ/' => 'k', |
||
| 84 | '/Ĺ|Ļ|Ľ|Ŀ|Ł/' => 'L', |
||
| 85 | '/ĺ|ļ|ľ|ŀ|ł/' => 'l', |
||
| 86 | '/Ñ|Ń|Ņ|Ň/' => 'N', |
||
| 87 | '/ñ|ń|ņ|ň|ʼn/' => 'n', |
||
| 88 | '/Ò|Ó|Ô|Õ|Ō|Ŏ|Ǒ|Ő|Ơ|Ø|Ǿ/' => 'O', |
||
| 89 | '/ò|ó|ô|õ|ō|ŏ|ǒ|ő|ơ|ø|ǿ|º/' => 'o', |
||
| 90 | '/Ŕ|Ŗ|Ř/' => 'R', |
||
| 91 | '/ŕ|ŗ|ř/' => 'r', |
||
| 92 | '/Ś|Ŝ|Ş|Ș|Š/' => 'S', |
||
| 93 | '/ś|ŝ|ş|ș|š|ſ/' => 's', |
||
| 94 | '/Ţ|Ț|Ť|Ŧ/' => 'T', |
||
| 95 | '/ţ|ț|ť|ŧ/' => 't', |
||
| 96 | '/Ù|Ú|Û|Ũ|Ū|Ŭ|Ů|Ű|Ų|Ư|Ǔ|Ǖ|Ǘ|Ǚ|Ǜ/' => 'U', |
||
| 97 | '/ù|ú|û|ũ|ū|ŭ|ů|ű|ų|ư|ǔ|ǖ|ǘ|ǚ|ǜ/' => 'u', |
||
| 98 | '/Ý|Ÿ|Ŷ/' => 'Y', |
||
| 99 | '/ý|ÿ|ŷ/' => 'y', |
||
| 100 | '/Ŵ/' => 'W', |
||
| 101 | '/ŵ/' => 'w', |
||
| 102 | '/Ź|Ż|Ž/' => 'Z', |
||
| 103 | '/ź|ż|ž/' => 'z', |
||
| 104 | '/Æ|Ǽ/' => 'AE', |
||
| 105 | '/ß/' => 'ss', |
||
| 106 | '/IJ/' => 'IJ', |
||
| 107 | '/ij/' => 'ij', |
||
| 108 | '/Œ/' => 'OE', |
||
| 109 | '/ƒ/' => 'f' |
||
| 110 | ); |
||
| 111 | $quotedReplacement = preg_quote($separator, '/'); |
||
| 112 | $merge = array( |
||
| 113 | '/[^\s\p{Zs}\p{Ll}\p{Lm}\p{Lo}\p{Lt}\p{Lu}\p{Nd}]/mu' => ' ', |
||
| 114 | '/[\s\p{Zs}]+/mu' => $separator, |
||
| 115 | sprintf('/^[%s]+|[%s]+$/', $quotedReplacement, $quotedReplacement) => '', |
||
| 116 | ); |
||
| 117 | $map = $_transliteration + $merge; |
||
| 118 | unset($_transliteration); |
||
| 119 | return mb_strtolower(preg_replace(array_keys($map), array_values($map), $string)); |
||
| 120 | } |
||
| 174 |
The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g.
excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths