Intereting Posts
preg_match (): Конечный разделитель '^' найден require_once () не может найти путь включения Настройки динамической конфигурации Laravel PHP strtotime () в Java Доступ к массиву объектов без цикла Путь загрузки в Codeigniter возвращает «путь загрузки, кажется, недействителен» Установленное приложение Redirect uri несоответствие на реальном сайте, который работает на localhost Вызов функции jQuery в php (или изменение javascript, так что php запускает оставшийся код) Как получить доступ к соединению mysqli в другом классе на другой странице? Выбор данных таблицы с помощью операторов PDO Как прочитать заголовок любого запроса в PHP Подключение к удаленной DB2 на i5 / os через php-клиент на Windows-машине с использованием pdo_ibm или ibm_db2 php-расширений Как преобразовать неправильно кодированные данные в UTF-8? Как сделать перенаправление в PHP? Разбирайте таблицу html с помощью file_get_contents в php-массив

MySQL UDF, который выполняет поиск и замену REGEX

Привет, я новый веб-разработчик на open.uwec.edu. Недавно мне пришлось переключать наши веб-серверы и сталкивались с некоторыми проблемами. Наш старый сервер MySQL использовал функцию из библиотеки lib_mysqludf_preg, называемой preg_replace, для поиска и сопоставления регулярных выражений. У него были некоторые .dlls, уже скомпилированные в папке «MySQL Server 5.1 / lib / plugin» с именем lib_mysqludf_preg.dll и libpcre.dll.

Если я скопирую эти dll на новый сервер на «MySQL Server 5.6 / lib / plugin» и сделаю что-то вроде …

CREATE Function preg_replace RETURNS STRING SONAME 'lib_mysqludf_preg.dll'; 

Я получаю ошибку формата MySQL 193 …

Я просмотрел руководство по репозиторию github для этой библиотеки по адресу https://github.com/mysqludf/lib_mysqludf_preg/blob/testing/doc/INSTALL.windows, но ссылки не попадают в нужные файлы, такие как pcre dll, и это просто не имеет смысла для меня. Нужно ли собирать эту библиотеку preg с нуля? Моя функция, которая его использует, выглядит так.

 CREATE DEFINER=`root`@`localhost` FUNCTION `slug`(dirty_string varchar(255)) RETURNS varchar(255) CHARSET latin1 DETERMINISTIC BEGIN Declare temp_string VarChar(255); Set temp_string = replace(dirty_string, '&', ' and '); Set temp_string = replace(temp_string, '''', ''); Set temp_string = preg_replace('/[^a-z0-9-]+/i', '-', temp_string); Set temp_string = preg_replace('/^-+|-+$/', '', temp_string); Return LOWER(temp_string); END 

Наш сайт использует фреймворк php codeigniter. У меня мало опыта работы с UDFS в MySQL, поэтому я надеюсь, что предоставил достаточно информации. Спасибо.