>  기사  >  백엔드 개발  >  Oracle에 대한 PHP 연결이 끊어지면 어떻게 해야 합니까?

Oracle에 대한 PHP 연결이 끊어지면 어떻게 해야 합니까?

藏色散人
藏色散人원래의
2022-10-19 09:31:292043검색

Oracle에 대한 PHP 연결에서 잘못된 문자에 대한 해결 방법: 1. "select * from V$NLS_PARAMETERS;" 명령을 실행하여 Oracle의 문자 세트를 가져옵니다. 2. 변수 "NLS_CHARACTERSET"을 해당 문자 세트로 수정합니다. 로컬 PHP를 변경합니다. 파일을 utf-8로 균일하게 설정할 수 있습니다.

Oracle에 대한 PHP 연결이 끊어지면 어떻게 해야 합니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, Dell G3 컴퓨터.

oracle에 대한 PHP 연결이 끊어지면 어떻게 해야 하나요?

PHP는 문자 깨짐을 방지하기 위해 문자 세트를 설정하기 위해 oracle에 연결합니다.

데이터베이스는 oracle을 사용합니다. PHP가 oracle에 연결할 때 문자 세트를 지정하는 것이 가장 좋습니다.

PHP 매뉴얼을 확인하세요. oci_connect의 네 번째 매개변수는 charset입니다. 이것이 핵심입니다.

먼저 oracle의 문자 집합을 가져오고 "select * from V$NLS_PARAMETERS;"를 실행합니다. NLS_CHARACTERSET 변수는 필요한 문자 집합에 해당합니다. 예를 들어 여기서는 "ZHS16GBK"입니다.

그래서 최종 PHP 코드는 다음과 같습니다.

$c1 = oci_connect("scott", "tiger", $db, 'zhs16gbk');

내 로컬 PHP 파일은 utf-8을 사용하므로 얻은 코드는 다음 인코딩 변환을 거쳐야 합니다.

while ($dat = oci_fetch_row($cur)) {    print_r(iconv('gb2312', 'utf-8', $dat[0]));  }

Update:

동료들은 Oracle이 고객 클라이언트가 지정한 문자 집합으로 데이터를 제공합니다. 즉, 내 로컬 PHP 파일이 UTF-8을 사용하는 경우 oci_connect를 사용할 때 UTF-8을 직접 지정할 수 있으며 인코딩 변환도 저장됩니다.

$c1 = oci_connect("scott", "tiger", $db, 'UTF8');

Php 코드

while ($dat = oci_fetch_row($cur)) {    print_r($dat[0]);  }

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 Oracle에 대한 PHP 연결이 끊어지면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.