From 622e388a6ae7fea09981dcb442a6fdce1160b396 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Mon, 5 Aug 2013 06:04:08 +0200 Subject: [PATCH] Refactor complex ternary operation Change-Id: I1b6cc1cf0348bc7e19f9f327c7a3d6d936cfaaf2 --- data/LanguageNameSearch.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/data/LanguageNameSearch.php b/data/LanguageNameSearch.php index 6d882ec5..c54d6bc0 100644 --- a/data/LanguageNameSearch.php +++ b/data/LanguageNameSearch.php @@ -83,10 +83,18 @@ class LanguageNameSearch { // 224 is the lowest non-overlong-encoded codepoint. $lookingFor = ( $thisValue < 224 ) ? 2 : 3; } + $values[] = $thisValue; if ( count( $values ) === $lookingFor ) { // Refer http://en.wikipedia.org/wiki/UTF-8#Description - $number = ( $lookingFor === 3 ) ? ( ( $values[0] % 16 ) * 4096 ) + ( ( $values[1] % 64 ) * 64 ) + ( $values[2] % 64 ) : ( ( $values[0] % 32 ) * 64 ) + ( $values[1] % 64 ); + if ( $lookingFor === 3 ) { + $number = ( $values[0] % 16 ) * 4096; + $number += ( $values[1] % 64 ) * 64; + $number += $values[2] % 64; + } else { + $number = ( $values[0] % 32 ) * 64; + $number += $values[1] % 64; + } return $number; }