private static function _getFile($locale, $path, $attribute = false, $value = false, $temp = array())
    {
        $result = self::_findRoute($locale, $path, $attribute, $value, $temp);
        if ($result) {
            $temp = self::_readFile($locale, $path, $attribute, $value, $temp);
        }

        // parse required locales reversive
        // example: when given zh_Hans_CN
        // 1. -> zh_Hans_CN
        // 2. -> zh_Hans
        // 3. -> zh
        // 4. -> root
        if (($locale != 'root') && ($result)) {
            $locale = substr($locale, 0, -strlen(strrchr($locale, '_')));
            if (!empty($locale)) {
                $temp = self::_getFile($locale, $path, $attribute, $value, $temp);
            } else {
                $temp = self::_getFile('root', $path, $attribute, $value, $temp);
            }
        }
        return $temp;
    }
private static function _getFile($locale, $path, $attribute = false, $value = false, $temp = array())
    {
        $result = self::_findRoute($locale, $path, $attribute, $value, $temp);
        if ($result) {
            $temp = self::_readFile($locale, $path, $attribute, $value, $temp);
        }

        // parse required locales reversive
        // example: when given zh_Hans_CN
        // 1. -> zh_Hans_CN
        // 2. -> zh_Hans
        // 3. -> zh
        // 4. -> root
        if (($locale != 'root') && ($result)) {
            $locale = substr($locale, 0, -strlen(strrchr($locale, '_')));
            if (!empty($locale)) {
                $temp = self::_getFile($locale, $path, $attribute, $value, $temp);
            } else {
                $temp = self::_getFile('root', $path, $attribute, $value, $temp);
            }
        }
        return $temp;
    }
private static function _getFile ( $ locale , $ path , $ attribute = false , $ value = false , $ temp = array ( ) ) { $ result = self :: _findRoute ( $ locale , $ path , $ attribute , $ value , $ temp ) ; if ( $ result ) { $ temp = self :: _readFile ( $ locale , $ path , $ attribute , $ value , $ temp ) ; } // parse required locales reversive // example: when given zh_Hans_CN // 1. -> zh_Hans_CN // 2. -> zh_Hans // 3. -> zh // 4. -> root if ( ( $ locale != 'root' ) && ( $ result ) ) { $ locale = substr ( $ locale , 0 , - strlen ( strrchr ( $ locale , '_' ) ) ) ; if ( ! empty ( $ locale ) ) { $ temp = self :: _getFile ( $ locale , $ path , $ attribute , $ value , $ temp ) ; } else { $ temp = self :: _getFile ( 'root' , $ path , $ attribute , $ value , $ temp ) ; } } return $ temp ; }
Read the right LDML file

@param  string $locale
@param  string $path
@param  string $attribute
@param  string $value
@access private
Read the right LDML file