Воскресенье, 2025-02-02, 9:21 AM
Каталог файлов - Скрипты-инструменты PHP
Приветствую Вас Гость | RSS
Главная страница Каталог файлов Регистрация Вход
Меню сайта

Категории каталога
Статистика [9]
Скрипты статистики
Скрипты-инструменты PHP [10]
Скрипты-инструменты PHP
Гостевые книги [21]
Скачать скрипт гостевой книги
Чаты [14]
Скрипты чатов
Файловые менеджеры [10]
Скрипты файлового менеджера
Музыка [14]
Музыкальные скрипты
Пользователи [10]
Скрипты пользователей
Доски объявлений [4]
Скрипты досок объявлений
Публикаторы [5]
Скрипты публикаторов
Форумы [14]
Скрипты форумов
Ссылки и каталоги ссылок [10]
Скрипты каталога ссылок
Топ сайтов [10]
Скрипты топов сайтов
Поиск [10]
Скрипты поиска
Электронная почта [15]
Скрипты электронной почты
Счётчики [16]
Скрипты счётчиков
Голосования [4]
Скрипты голосований
Фотогаллереи [4]
Скрипты фотогаллерей
Разные скрипты PHP [22]
Разные скрипты на PHP

Наш опрос
Выбираем ОС
Всего ответов: 192

Начало » Файлы » PHP скрипты » Скрипты-инструменты PHP

Функция склоняет фамилию, имя и отчество в дательный падеж
[ ]
<?php
function DativeCase($FirstName, $SecondName, $Patronymic)
{
$FirstName = trim($FirstName);
$SecondName = trim($SecondName);
$Patronymic = trim($Patronymic);

if (!empty($FirstName) && !empty($SecondName) && !empty($Patronymic))
{
# Получаем пол человека:
if (substr($Patronymic, -1) == 'ч')
{
# Склонение фамилии мужчины:
switch (substr($FirstName, -2))
{
case 'ха':
$FirstName = substr($FirstName, 0, -2).'хи';
break;

default:
switch (substr($FirstName, -1))
{
case 'е': case 'о': case 'и': case 'я': case 'а':
break;

case 'й':
$FirstName = substr($FirstName, 0, -2).'ому';
break;

case 'ь':
$FirstName = substr($FirstName, 0, -1).'ю';
break;

default:
$FirstName = $FirstName.'у';
break;
}
break;
}

# Склонение мужского имени:
switch (substr($SecondName, -1))
{
case 'л':
$SecondName = substr($SecondName, 0, -2).'лу';
break;

case 'а': case 'я':
If (substr($SecondName, -2, 1) == 'и')
{
$SecondName = substr($SecondName, 0, -1).'и';
}
else
{
$SecondName = substr($SecondName, 0, -1).'е';
}
break;

case 'й': case 'ь':
$SecondName = substr($SecondName, 0, -1).'ю';
break;

default:
$SecondName = $SecondName.'у';
break;
}

# Склонение отчества
$Patronymic = $Patronymic.'у';

}
else
{
# Склоенение женской фамилии
switch (substr($FirstName, -1))
{
case 'о': case 'и': case 'б': case 'в': case 'г':
case 'д': case 'ж': case 'з': case 'к': case 'л':
case 'м': case 'н': case 'п': case 'р': case 'с':
case 'т': case 'ф': case 'х': case 'ц': case 'ч':
case 'ш': case 'щ': case 'ь':
break;

case 'я':
$FirstName = substr($FirstName, 0, -2).'ой';

default:
$FirstName = substr($FirstName, 0, -1).'ой';
break;
}

# Склонение женского имени:
switch (substr($SecondName, -1))
{
case 'а': case 'я':
If (substr($SecondName, -2, 1) == 'и')
{
$SecondName = substr($SecondName, 0, -1).'и';
}
else
{
$SecondName = substr($SecondName, 0, -1).'е';
}
break;

case 'ь':
$SecondName = substr($SecondName, 0, -1).'и';
break;
}

# Склонение женского отчества
$Patronymic = substr($Patronymic, 0, -1).'е';

}

return "$FirstName $SecondName $Patronymic";
}
}

# Проверка работоспособности
echo DativeCase ('Иванов','Иван','Иванович');

?>

Категория: Скрипты-инструменты PHP | Добавил: webmaster
Просмотров: 395 | Загрузок: 0 | Рейтинг: 0.0 |

Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Сервисы

Поиск по каталогу

Друзья сайта

| Ссылки 1 | Ссылки 2 | Ссылки 3 |
www.webmaster.clan.su Каталог+поисковая система be number one Bakililar.az Top Sites Сервис авто регистрации в
каталогах, статьи про раскрутку сайтов, web дизайн, flash, 
photoshop, хостинг, рассылки; форум, баннерная сеть, каталог 
сайтов, услуги продвижения и рекламы сайтов Скрипт для определения тиц (Яндекс CY: индекс цитирования). Определение pr (Google Pagerank). Проверить тиц pr сайта.
Copyright WebMaster.Clan © 2006 Бесплатный хостинг uCoz