PHP 확장 개발 경험 공유 소개
1단계: 확장 뼈대 만들기
cd php-5.2.14/ext
./ext_skel �Cextname=laiwenhui
2단계: 컴파일 매개변수 수정
cd php-5.2.14/ext/laiwenhui
vi config.m4
없애다
PHP_ARG_ENABLE(laiwenhui, whether to enable laiwenhui support,
[ --enable-laiwenhui Enable laiwenhui support])
두 줄 앞의 dnl
수정된 내용은 다음과 같습니다.
dnl Otherwise use enable:
PHP_ARG_ENABLE(laiwenhui, whether to enable laiwenhui support,
dnl Make sure that the comment is aligned:
[ --enable-laiwenhui Enable laiwenhui support])
3단계: 코드 작성vimphp_laiwenhui.h
PHP_에서FUNCTION(confirm_laiwenhui_compiled); 다음 행 추가: PHP_FUNCTION(test);
추가:
PHP_FUNCTION(confirm_laiwenhui_compiled);/* For testing, remove later. */
PHP_FUNCTION(test);
그리고
vim laiwenhui.c
PHP_에서FE(confirm_laiwenhui_compiled, NULL) 뒤에 PHP_ 추가FE(test, NULL)
추가:
zend_function_entry laiwenhui_functions[] = {
PHP_FE(confirm_laiwenhui_compiled, NULL) /* For testing, remove later. */
PHP_FE(test, NULL) /* For testing, remove later. */
{NULL, NULL, NULL} /* Must be the last line in laiwenhui_functions[] */
};
파일 맨 뒤에 다음 코드를 추가합니다.
PHP_FUNCTION(test)
{
char *arg = “This my first extention!”;
int len;
char *strg;
len = spprintf(&strg, 0, “%s
”, arg);
RETURN_STRINGL(strg, len, 0);
}
4단계: 코드 컴파일
cd php-5.2.6/ext/laiwenhui
/opt/module/php/bin/phpize
./configure �Cwith-php-config=/opt/module/php/bin/php-config
make
make install
내 PHP 설치 경로:/opt/module/php
이때 파일/opt/module/php/lib/php/extensions/no-debug-non-zts-200613/laiwenhui가 생성됩니다.so
PHP 프로필 php를 편집합니다.ini, 확장 추가:
vim php.ini
[PHP] 모듈에서 추가: extension = laiwenhui.so
;extension=php_zip.dll
extension = laiwenhui.so
php.ini 파일의 extension_dir 이 디렉토리로 수정:
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/”
; Directory in which the loadable extensions (modules) reside.
extension_dir = “/opt/module/php/lib/php/extensions/no-debug-non-zts-20060613/”
단계 5: 설치 결과 확인
1. 아파치 또는 php-fpm 재부팅
2./opt/module/php/bin/php-mlaiwenhui 확장이 포함되어 있는지 확인하십시오.
6단계: 테스트 코드 실행
사이트 루트 디렉터리에 테스트를 만듭니다.php
vim test.php
코드 내용은 다음과 같습니다.
echo test();
?>
실행 결과:This my first extention!
만약 네가 상기 몇 단계를 순조롭게 완성할 수 있다면, 네가 첫 번째 확장을 완성한 것을 축하한다.
다음은 PHP 확장을 위한 간단한 단계입니다. 참고:
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.