PHP массивы или перевод MySQL? Как? - PullRequest
0 голосов
/ 28 августа 2011

Я хотел бы создать страницу, которая содержит только текстовую область и заполнитель для выходного текста. Пользователь будет вводить текст в текстовое поле, и пока он печатает (или когда нажата кнопка ввода), текст переводится (или, что более важно, заменяется). Например, я мог бы написать что-то вроде «По моему честному мнению», или «если честно», и это преобразовало бы текст в его сокращенную форму IMHO и TBH, я думал об этом с массивами. В тексте можно сначала найти более длинные строки, т.е. я подумал, что у меня есть массив из четырех словосочетаний, трех словосочетаний, двух словных и один массив слов, которые можно сокращать, они могут быть в «ключе» => форма "стоимость". Будет ли это работать, или MySQL будет работать лучше?

1 Ответ

2 голосов
/ 28 августа 2011

Звучит так, будто вы хотите отобразить полный текст в сокращенный текст.Это должно работать так же, как и настоящий перевод i18n, поэтому подойдет любая реализация перевода.

Даже если вы не используете Zend Framework, вы можете посмотреть на Zend_Translate адаптеры , чтобы увидеть их поддерживаемыекартографические решения для подходящего кандидата.

Действительно, не говоря уже о том, что картирование, что key => value, безусловно, является подходящим способом;как вы храните карту, зависит только от вас.

Обновлено

$map = array(
    'in my honest opinion' => 'IMHO',
    'to be honest' => 'TBH'
);

// Really simple search/replace
$translated = str_replace(array_keys($map), $map, $string_to_translate);

Здесь показан действительно простой поиск / замена, но сложность замены будет зависеть от типа ввода итип замены вы ожидаете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...