Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if (!$info && count($words) > 1) {
- for ($z = 0; $z < 3; $z++) {
- for ($i = 0; $i < count($words); $i++) {
- for ($k = count($words) - 1; $k >= 0; $k--) {
- if (($z == 0 && (!(isset($info['country_id']) && $info['country_id']) ||
- (
- isset($info['country_id']) && $info['country_id'] &&
- isset($info['city_id']) && $info['city_id'])
- )
- ) ||
- ($z == 1 && !(isset($info['region_id']) && $info['region_id'])) ||
- ($z == 2 && !(isset($info['city_id']) && $info['city_id']))
- ) {
- $search_arr = [];
- $separators = [' ', '-'];
- foreach ($separators as $sep) {
- if (($str_item = implode($sep, array_slice($words, $i, $k - $i + 1)))) {
- $search_arr[$str_item] = 1;
- }
- }
- foreach (array_keys($search_arr) as $name) {
- if (!$z && (
- // Страна не найдена
- (!(isset($info['country_id']) && $info['country_id'])) ||
- // Страна найдена в исключениях - пробуем еще
- (
- isset($info['country_id']) && $info['country_id'] &&
- isset($info['city_id']) && $info['city_id']
- )
- )
- ) {
- if (($info1 = $obj->getCountry($name, 1))) {
- $info = $info1;
- }
- } elseif ($z == 1) {
- // Регион приоритетнее страны, поэтому не проверем соответсвте страна => регион
- if (($info3 = $obj->getRegion($name)) &&
- isset($info3['region_id']) && $info3['region_id']
- ) {
- $info = $info3;
- }
- } elseif ($z == 2) {
- $info2 = $obj->getCity(
- $name,
- isset($info['country_id']) ? $info['country_id'] : 0,
- isset($info['region_id']) ? $info['region_id'] : 0
- );
- if ($info2 && isset($info2['country_id']) &&
- isset($info2['city_id']) && $info2['city_id'] &&
- (isset($info['country_id']) ? ($info['country_id'] == $info2['country_id']) : 1)
- ) {
- $info = $info2;
- }
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement