Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Ошибка php
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » Ошибка php

Страниц (1): [1]
 

1. Pingvin - 27 Августа, 2012 - 13:32:00 - перейти к сообщению
Как выяснилось str_split() c одним параметром нормально работает только с латинскими символами даже в UTF-8, даже установка внутренней кодировки с помощью команды mb_internal_encoding("UTF-8"); не помогает. Версия php 5.2.12
P.S. Выдаётся массив в 1251 кодировке, хотя входные данные в "UTF-8".
2. Мелкий - 27 Августа, 2012 - 13:37:23 - перейти к сообщению
Pingvin пишет:
даже установка внутренней кодировки с помощью команды mb_internal_encoding("UTF-8"); не помогает.

Само собой, т.к. имеет эффект только на mb_ функции.

Воспользуйтесь mb_split, можно preg_split.
3. Zuldek - 27 Августа, 2012 - 13:42:54 - перейти к сообщению
Сам файл, как и данные передаваемые функции должны быть в одной кодировке. Проблем не должно быть. Используйте везде UTF-8 и не будет проблем.
4. Pingvin - 27 Августа, 2012 - 14:59:27 - перейти к сообщению
Да я ошибся, что без mb_ использовал функции, только даже с mb_split('/?/', $stroka) - не получается сделать массив по одному символу.
5. Pingvin - 28 Августа, 2012 - 11:55:38 - перейти к сообщению
С mb_split так и не получилось, а preg_split('//u',$str, -1, PREG_SPLIT_NO_EMPTY); - работает.

 

Powered by ExBB FM 1.0 RC1