PHP는 자체적인 mail() 기능을 사용하여 이메일을 보낼 수 있지만 이 기능은 메일 서버 구성이 필요하고 SMTP 확인을 지원하지 않는 경우가 많습니다. 하지만 항상 오류가 발생합니다. 여기서는 PEAR의 Mail 클래스를 사용하고 smtp를 사용하여 이메일을 보냅니다.
첫 번째 설치에는 최신 버전의 PHP5를 사용하는 것이 좋습니다. PHP4에 문제가 많기 때문입니다. 주로 캡슐화된 클래스의 버전이 너무 높고 PHP4와 호환되지 않기 때문입니다.
설치 방법:
1. php 디렉토리에 있는 go-pear.bat를 더블클릭하세요.
2. 프롬프트에 따라 몇 가지 설정 정보를 입력합니다. 주로 외부 네트워크에 직접 액세스할지 아니면 프록시를 사용할지 묻습니다. 프록시 서버가 없으면 Enter를 누르면 됩니다.
3. 그런 다음 일부 패키지를 PHP에 바인딩하라는 메시지가 표시되면 Y를 선택합니다.
4. 그런 다음 기본 패키지를 설치하고 설치가 성공했다는 메시지를 표시하면 간단합니다.
5. Windows 디렉터리에서 php.ini 파일을 열고 다음 위치를 찾습니다.
; 유닉스: "/path1:/path2"
;include_path = ".:/php/includes"
;
; 윈도우: "경로1;경로2"
;include_path = ".;c:phpincludes"
마지막 줄의 설명을 제거한 후 다음 경로를 PEAR 경로로 변경합니다. 예:
include_path = ".;c:phppear"
PHP.INI를 저장한 다음 APACHE를 다시 시작하십시오.
이제 PEAR가 설치되었으므로 사용하려는 클래스는 php 디렉토리의 pear 폴더에 있지만 현재 사용할 수 있는 클래스가 많지 않아 온라인으로 다운로드하여 설치해야 합니다.
PEAR 루트 디렉터리에서 PEAR.bat 파일을 찾을 수 있습니다(위 설치를 실행한 후에 이 파일이 생성됩니다). CMD에서 이를 사용하려면 환경 변수 PATH를 설정해야 합니다. 또는 생성된 EV_XXX.REG 파일을 두 번 클릭합니다. 명령 기능 중 일부는 다음과 같습니다.
1. 설치:
네트워크에서 Pear 라이브러리 설치:
Pear 설치 패키지 이름
설치하지 않고 패키지 다운로드:
배 다운로드 패키지 이름
배다운로드
다운로드한 패키지 설치:
Pear 설치 파일명.tgz
2. 목록:
현재 Pear 웹사이트에서 사용 가능한 모든 Pear 라이브러리 목록:
배 원격 목록
설치된 패키지 목록:
배 목록
업그레이드할 수 있는 패키지 목록:
배 목록 업그레이드
3. 업데이트(업그레이드):
업데이트 패키지:
배 업그레이드 패키지 이름
배 업그레이드-올
4. 제거:
설치된 패키지 제거:
배 제거 패키지 이름
cmd에서 PHP 디렉토리에 들어가서 pear install mail을 실행합니다
설치 프로세스에서 일부 라이브러리가 설치되지 않았다는 메시지가 표시되면 다음과 같이 해당 라이브러리를 계속 설치하십시오.
설치가 계속됩니다.
이제 pear 디렉터리 아래에 추가 메일 디렉터리가 생성되고, 나중에 참조할 파일인 mail.php도 있을 예정이며, 설치가 성공했음을 나타내는 정보가 표시됩니다.
다음은 이메일을 보내는 데 사용하는 코드입니다.
<? require_once 'Mail.php'; flush(); $conf['mail'] = array( 'host' => 'mail.nenu.edu.cn', //smtp服务器地址,可以用ip地址或者域名 'auth' => true, //true表示smtp服务器需要验证,false代码不需要 'username' => 'guanhf844', //用户名 'password' => '你的密码' //密码 ); $headers['From'] = 'guanhf844@nenu.edu.cn'; //发信地址 $headers['To'] = 'chf007server@163.com'; //收信地址 $headers['Subject'] = 'test mail send by php'; //邮件标题 $mail_object = &Mail::factory('smtp', $conf['mail']); $body = '<<< MSG hello world!!! MSG'; //邮件正文 $mail_res = $mail_object->send($headers['To'], $headers, $body); //发送 if( PEAR::isError($mail_res) ){ //检测错误 die($mail_res->getMessage()); } echo 'Send finished.'; ?>
테스트 결과 성공적으로 전송되었으며 속도도 꽤 빨랐습니다. 다른 메일함에서는 테스트하지 않았습니다.
위 내용은 pear를 사용하여 PHP에서 메일 보내기 기능을 구현하기 위한 모든 코드입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.