Попробуйте reinterpret_cast
unsigned char *foo();
std::string str;
str.append(reinterpret_cast<const char*>(foo()));
Zend_Date
полностью интернационализирован. Вы должны проверить это, чтобы найти простой способ сделать это:
Все полные и сокращенные имена месяца и будни поддерживаются для более 130 языков. Методы поддерживать как ввод, так и вывод даты с использованием локализованных названий месяцев и будних дней, в обычный формат, связанный с каждый языковой стандарт.
На самом деле, я не думаю, что это вполне возможно в PHP 5.2: - (
По крайней мере, не с тем, что связано с / в PHP (Есть библиотеки, закодированные в Однако PHP, который вы могли бы использовать, как указано в других ответах)
Однако с PHP 5.3 у вас есть класс IntlDateFormatter , который делает именно то, что вы хотите:
Этот класс представляет ICU Дата функциональность форматирования. Это позволяет пользователям отображать даты в локализованном форматировать или анализировать строки в PHP значения даты с использованием шаблонных строк и / или стандартные шаблоны.
Например, используя этот класс, например:
echo IntlDateFormatter::create('fr_FR', IntlDateFormatter::FULL, IntlDateFormatter::FULL)->format(time(time())) . "\n";
echo IntlDateFormatter::create('fr_FR', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT)->format(time(time())) . "\n";
echo IntlDateFormatter::create('zh-Hant-TW', IntlDateFormatter::FULL, IntlDateFormatter::FULL)->format(time(time())) . "\n";
echo IntlDateFormatter::create('zh-Hant-TW', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT)->format(time(time())) . "\n";
echo IntlDateFormatter::create('en_US', IntlDateFormatter::FULL, IntlDateFormatter::FULL)->format(time(time())) . "\n";
echo IntlDateFormatter::create('en_US', IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT)->format(time(time())) . "\n";
Вы получите:
dimanche 9 novembre 2008 23:54:47 GMT+00:00
9 nov. 2008 23:54
2008年11月9日星期日 下午11時54分47秒 GMT+00:00
2008/11/9 下午 11:54
Sunday, November 9, 2008 11:54:47 PM GMT+00:00
Nov 9, 2008 11:54 PM
Что выглядит неплохо, не так ли?
Печально, что PHP 5.3 - это только несколько месяцев назад и недоступны на многих хостингах ... И потребуют тестирования (и, возможно, исправлений) для вашего приложения ...
Подумайте об этом: возможно, вы можете установить PECL intl extension на PHP 5.2 и получить ту же функциональность ...