[sisyphus] php: iconv

Alexander Bokovoy =?iso-8859-1?q?a=2Ebokovoy_=CE=C1_sam-solutions=2Enet?=
Вт Ноя 11 13:57:20 MSK 2003


On Tue, Nov 11, 2003 at 12:29:23PM +0200, Nick Fedchik wrote:
Content-Description: signed data
> В сообщении от Вт 11 Ноя 2003 10:26 Alexander Bokovoy написал(a):
> > > Sources:
> > > /php-4.3.4-20031101/ext/iconv
> > > Значит еще к этому iconv живет в исходниках php? :)
> > Ну живет и что? 
> Ничего. Не работает ведь...
Это исходники PHP. Вполне естественно, что исходники связки с iconv живут
в исходниках PHP.

> > Просто PHP предназначен для работы на гораздо большем
> > количестве систем, чем просто glibc-based. 
> Этого никто не отрицает.
> 
> > В нашем случае поддержка iconv
> > должна быть встроенной в основной php.
> Должна, и флаг для конфигурации в спеке даже выставлен.
> Но - скрипты вызов не делают, судя по ошибке.
> А какой php "не основной"?
Не знаю, какой "не основной". У нас есть libphpcommon.so, в котором
содержится общие для всех SAPI функции. "Встроенный" означает входящий в
libphpcommon.so. Во всяком случае, туда оно входит:

         U iconv
         U iconv_close
00127be0 D iconv_functions
0012d4f8 B iconv_globals
00127c20 D iconv_module_entry
         U iconv_open
000e14a0 T php_if_iconv
000e1920 T zif_iconv_get_encoding
000e17d0 T zif_iconv_set_encoding
000e1570 T zif_ob_iconv_handler
000e10b0 T zm_info_miconv
000e1080 T zm_shutdown_miconv
000e0fd0 T zm_startup_miconv

Далее, ставлю php, php-common и получаю в ответ на простую программу 

<?php
phpinfo();
?>

Что поддержка iconv присутствует:

iconv

iconv support => enabled
iconv implementation => glibc
iconv library version => 2.2.6

Directive => Local Value => Master Value
iconv.input_encoding => ISO-8859-1 => ISO-8859-1
iconv.internal_encoding => ISO-8859-1 => ISO-8859-1
iconv.output_encoding => ISO-8859-1 => ISO-8859-1

> Я свою проблему решил - отключил использование iconv в squirrelmail.
> Пока что приемлемо работает.
Вот банальный пример его работоспособности:
$ cat test.php 
<?php
$test = 'Iconv форева';

var_dump(iconv("CP1251", "UTF-8", $test));
?>

$ php test.php
string(18) "Iconv форева"

-- 
/ Alexander Bokovoy
Samba Team                      http://www.samba.org/
ALT Linux Team                  http://www.altlinux.org/
Midgard Project Ry              http://www.midgard-project.org/



Подробная информация о списке рассылки Sisyphus