Пишу функцию, которая будет читать файл построчно или содержимое '<textarea>'. Но проблема с кодировкой

217
06 мая 2018, 18:56

Пишу функцию, которая будет читать файл построчно, и эта же функция будет считывать содержимое <textarea> c помощью explode("\r\n"). Но вот незадача - в случае с файлом нужно менять кодировку, а с textarea - не нужно (там она и так UFT-8). Как правильно поступить?

$arrayOfStr = file('fileName.txt')
foreach($arrayOfStr as $key=>$str){
  //Не работает...      
  if(mb_detect_encoding($str, array("windows-1251", "UTF-8")) !== "UTF-8"){
    $arrayOfStr[$key] = iconv(mb_detect_encoding($str, "windows-1251"), "UTF-8", $str));
}

Выдает:

������ �� ��
//А так, если вместо if() выше, работает...
    $arrayOfStr[$key] = trim(iconv("windows-1251", "UTF-8", $str));

Я окончательно запутался как правильно пользоваться mb_detect_encoding...

А когда делаешь:

foreach($arrayOfStr as $key=>$str){
    echo mb_detect_encoding($str, array('windows-1251', 'UTF-8')) . '<br>';
}

Выдает:

UTF-8
Windows-1251
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
UTF-8
Windows-1251
UTF-8
UTF-8

Как правильно менять кодировку?

READ ALSO
Способы шифрования строки php

Способы шифрования строки php

Можете посоветовать способы шифрования на примерах php? Интересует вариант описанный тут https://rustackoverflow

216
Реализация cdn font

Реализация cdn font

Как реализовать cdn font для сайта или существует ли пакет( packagist )?

188
Как разделить переменную из цикла на другую переменную?

Как разделить переменную из цикла на другую переменную?

В php новичок, как можно разделить i-тую переменную из цикла на другую переменную? В моем случае $row[2] на $hТ

179
Объединить ajax

Объединить ajax

Имеется много ajax на разных страницахМожно ли сделать так чтобы постоянно не писать ajax для каждой формы, а сделать что-то универсальное

197