PHP 기본 인코딩을 utf-8로 설정 하시겠습니까?
PHPPHP 기본 인코딩을 utf-8로 설정 하시겠습니까?
"PHP 요리 책"에서 그들은 출력 데이터의 char 인코딩을 utf-8로 적절히 설정하기 위해 default_encoding 구성을 utf-8로 편집해야한다고 말합니다 (p.589).
그러나 php.ini에서이 구성을 찾을 수 없습니다. default_encoding = "utf-8"이라고하는 행을 추가해야합니까?
나는; default_charset = "iso-8859-1"을 가지고있다. 보시다시피 (;), 지금은 활성화되지 않았습니다. 세미콜론을 제거하고 "utf-8"로 설정해야합니까? 그것은 기본 인코딩을 처리합니까?
나는 또한 내가 무엇을해야할지 모른다는 다른 인코딩 지시어를 발견했다.
[iconv]
;iconv.input_encoding = ISO-8859-1
;iconv.internal_encoding = ISO-8859-1
;iconv.output_encoding = ISO-8859-1
...
; http://php.net/exif.encode-unicode
;exif.encode_unicode = ISO-8859-15
...
;mssql.charset = "ISO-8859-1"
...
;exif.encode_unicode = ISO-8859-15
왜 내가 utf-8로 그들을 전부 대체해서는 안되는 어떤 이유가 있습니까?
해결법
-
==============================
1.default_charset을 UTF-8로 설정해야합니다.
default_charset을 UTF-8로 설정해야합니다.
default_charset = "utf-8"
(PHP 쿡북은 default_encoding을 바꾸라고 요청하면 오타가있을 수 있습니다. 들어 본 적이 없습니다.)
또한 UTF-8 인코딩 문자를 출력하려는 경우 웹 서버에서 UTF-8을 출력하도록 설정해야합니다. 아파치에서 이것은 httpd.conf 파일에서 설정할 수 있습니다 :
AddDefaultCharset UTF-8
iconv, exif 및 mssql 인코딩 설정을 수정하는 경우 이러한 설정을하지 않아도됩니다 (설정에 이러한 설정이 포함되어 있음).하지만 모든 설정을 UTF-8로 변경하는 것이 좋습니다.
-
==============================
2.행 수정
행 수정
;default_charset = "iso-8859-1"
읽다
default_charset = "utf-8"
다른 옵션에 대해서는 터치하지 마십시오. 기본 설정을 사용하지 말고 항상 모든 작업에서 인코딩을 명시 적으로 설정하십시오.
또한 PHP 파일을 저장하는 인코딩에주의하십시오. 특히 UTF-8이 표시되거나 비교 될 문자열이 포함되어 있으면 인코딩이 UTF-8인지 확인하십시오.
-
==============================
3.내 mysql 쿼리에 문제가있어 일부 latin acentuation을 인식하지 못하므로 쿼리가 실패합니다. 나는 php 파일 일 수 있다고 생각하고, pdo를 사용하여 mysql을 호출 할 때까지 charset을 추가해야한다고 생각했다. 기이 한 일은 내가 사용했던 이전 서버가 잘 작동했다는 것입니다!
내 mysql 쿼리에 문제가있어 일부 latin acentuation을 인식하지 못하므로 쿼리가 실패합니다. 나는 php 파일 일 수 있다고 생각하고, pdo를 사용하여 mysql을 호출 할 때까지 charset을 추가해야한다고 생각했다. 기이 한 일은 내가 사용했던 이전 서버가 잘 작동했다는 것입니다!
$dsn = 'mysql:host=localhost;dbname=retirodo_main;charset=utf8'; - - - - - - - - - - - - - - - - - - - - - - - - - ^^^^^^^^^^^^
-
==============================
4.해결하려면 "UTF-8"(대시 없음)으로 변경하여 대신 문제를 해결하십시오.
해결하려면 "UTF-8"(대시 없음)으로 변경하여 대신 문제를 해결하십시오.
CentOS
이자 이사 모라
-
==============================
5.htaccess 레벨 (.htaccess 파일)에서 php 지시어는 php_value default_charset UTF-8이어야합니다.
htaccess 레벨 (.htaccess 파일)에서 php 지시어는 php_value default_charset UTF-8이어야합니다.
-
==============================
6.* default_charset = "utf-8"*에서 * default_charset = "iso-8859-1"*로 변경하면 (아파치 웹 서버와 리눅스 OS를 사용한다.) utf-8을 사용할 때 어떤 이유 때문에 일부 문자가 잘 렌더링되지 않습니다. 사용 된 웹 브라우저에 따라 사각형 기호 또는 물음표로 변경됩니다.
* default_charset = "utf-8"*에서 * default_charset = "iso-8859-1"*로 변경하면 (아파치 웹 서버와 리눅스 OS를 사용한다.) utf-8을 사용할 때 어떤 이유 때문에 일부 문자가 잘 렌더링되지 않습니다. 사용 된 웹 브라우저에 따라 사각형 기호 또는 물음표로 변경됩니다.
from https://stackoverflow.com/questions/9351694/setting-php-default-encoding-to-utf-8 by cc-by-sa and MIT license
'PHP' 카테고리의 다른 글
URL에서 index.php 제거 - Codeigniter 2 (0) | 2018.09.19 |
---|---|
PHP에서 문자열을 바이트 배열로 (0) | 2018.09.19 |
PHP에서 객체의 보호 된 속성을 얻는 방법 (0) | 2018.09.19 |
PHP : 1D 배열의 모든 가능한 조합을 얻는 방법? [복제] (0) | 2018.09.19 |
php 함수를 비동기 적으로 호출하는 PHP 스레딩 (0) | 2018.09.19 |