Преобразование текста: функция utf8win1251 в 1С-Битрикс

Внимание! Работает режим премодерации. Все сообщения публикуются после проверки!
Страницы: 1
Ответить
RSS
Преобразование текста: функция utf8win1251 в 1С-Битрикс
Функция utf8win1251 в 1С-Битрикс: описание и примеры

Работая с 1С-Битрикс, нередко приходится сталкиваться с вопросами  кодировок и конвертации текста. Особенно это заметно при интеграции с  внешними системами или при неправильно настроенных кодировках в проекте.  В таких случаях на помощь приходят различные функции, упрощающие  обработку строк. В данной статье мы рассмотрим функцию utf8win1251,  которая конвертирует строку из кодировки UTF-8 в Windows-1251, а также  покажем несколько практических примеров её использования.
Изменено: Валерий Макеев - 29.09.2025 15:04:53
Конвертируем строку с названием товара из UTF-8 в Windows-1251 и сохраняем её в файл для корректного импорта в устаревшую внешнюю систему, не поддерживающую UTF-8.
Код
<?php

// Преобразуем название товара из UTF-8 в Windows-1251 для совместимости с устаревшей CRM-системой
$productNameUtf8 = "Смартфон с увеличенным экраном и NFC";
$productNameWin1251 = utf8win1251($productNameUtf8);

// Сохраняем в файл, который будет импортирован в старую CRM
file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/upload/export_product.txt', $productNameWin1251);

echo "Данные сохранены в кодировке Windows-1251";

Функция utf8win1251() больше не гарантируется как доступная (помечена как @deprecated) в новых версиях Битрикс. Вместо неё всегда используйте Bitrix\Main\Text\Encoding::convertEncoding() — это правильный, современный и надёжный способ.

Код
<?php

// Подключаем ядро Битрикс
require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');

use Bitrix\Main\Text\Encoding;

// Преобразуем название товара из UTF-8 в Windows-1251 для совместимости с устаревшей CRM-системой
$productNameUtf8 = "Смартфон с увеличенным экраном и NFC";
$productNameWin1251 = Encoding::convertEncoding($productNameUtf8, 'UTF-8', 'Windows-1251');

// Сохраняем в файл, который будет импортирован в старую CRM
file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/upload/export_product.txt', $productNameWin1251);

echo "Данные сохранены в кодировке Windows-1251";

require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/epilog_after.php');
?>
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Аутсорсинг

готов помочь, если нет времени

договорная

Могу взять на себя работы по full-stack

* на основе готовой верстки

Перенос сайтов на «1С-Битрикс»

сайты на платформе «1С-Битрикс» — это удобство, надежность и высокая посещаемость

от 12 000 рублей
Перенос сайтов с любых CMS и статичных страниц на платформу «1С-Битрикс», с учетом дизайна, верстки и урл-адресов. С сохранением всей информации и структуры сайта.

* зависит от объема выполняемых работ.

Интернет-магазин на готовом решении

от 7 дней

от 40 000 рублей
запуск сайта в максимально короткие сроки

* указана минимальная стоимость. Стоимость выбранной лицензии «1С-Битрикс» оплачивается отдельно.