windows_php 기술에서 php5.5 개발 환경 및 개발 확장 구성
인터넷에 많은 튜토리얼이 있지만, Windows에서 확장 개발이 상대적으로 적고 대부분이 php5.3 버전 이전인 것으로 나타났습니다. 오늘은 php 확장 개발에 대해 설명하겠습니다. 저는 php5를 사용하겠습니다. 버전 5에서 설명드리겠습니다
Windows 환경(개인적인 환경)
Windows 8.1 Enterprise Edition(mac OS Boot Camp와 함께 설치)
비주얼 스튜디오 2012 버전
msysgit (http://msysgit.github.io/ 다운로드)
php-sdk-binary-tools-20110915.zip (http://windows.php.net/downloads/php-sdk/다운로드)
deps-5.5-vc11-x86.7z (http://windows.php.net/downloads/php-sdk/다운로드)
php-5.5.20(http://php.net/downloads.php다운로드, 이 버전을 선택할 수 있습니다)
1단계
php-sdk-binary-tools의 바이너리 패키지를 압축 해제합니다. 예를 들어 C:php-sdk 폴더에 압축을 해제했습니다.
C:php-sdk
--빈
--스크립트
--공유
그런 다음 Visual Studio 2012를 설치한 후 VS2012 기본 도구 명령 프롬프트 명령줄 도구를 엽니다.
#디렉터리 입력
CD C:php-sdk
#환경변수 설정
binphpsdk_setvars.bat
#일반적으로 사용되는 php-sdk 디렉토리 생성
binphpsdk_buildtree.bat phpdev
binphpsdk_buildtree.bat 파일을 열어보면 VC11이 아닌 VC9로만 생성되어 있는 것을 알 수 있는데, php5.5 버전을 개발한다면 이때 VC11이 필요합니다. php-sdkphpdevvc9 C:php-sdkphpdevvc11에 복사합니다. 현재 디렉터리 구조는 다음과 같습니다.
C:php-sdkphpdev
--vc6
--vc8
--vc9
--vc11
deps-5.5-vc11-x86.7z를 다운로드했기 때문에 deps-5.5-vc11-x86.7z의 압축을 풀고 C:php-sdkphpdevvc11x86deps 폴더에 덮어써야 합니다. 여기에는 필요한 라이브러리 파일과 일부 필요한 도구 등
그런 다음 C:php-sdkphpdevvc11x86php-5.5.20 폴더에 다운로드한 php-5.5.20.tar.bz2의 압축을 풉니다.
php 컴파일 및 설치
VS2012 기본 도구 명령 프롬프트로 돌아가기
#PHP 소스 디렉토리 폴더를 입력하세요
cd c:php-sdkphpdevvc11x86php-5.5.20
빌드컨피그
#밴드와 함께 확장 및 컴파일 명령어 보기
--help 구성
PHP-SDK
php를 설치하지 않았다면 지금 도움이 될 것입니다. 먼저 PHP를 컴파일하고 설치할 수 있습니다
--disable-all --enable-cli 구성
그런 다음 'nmake'를 입력하여 PHP를 빌드한 다음 컴파일하는 것을 볼 수 있습니다.
엔메이크
php.exe 파일은 C:php-sdkphpdevvc11x86php-5.5.20Release_TS 폴더에 생성됩니다. 이 경로를 환경 변수에 추가하면 명령줄에서 php 명령을 사용할 수 있습니다.
PHP용 첫 번째 확장 개발
widuu() 함수를 개발한다면 효과는 다음과 같습니다
함수 widuu($string){
"첫 번째 확장 프로그램 {$string}은(는) 괜찮습니다."를 반환합니다.
}
확장 디렉토리를 입력하고 확장 폴더를 생성하세요
cd C:php-sdkphpdevvc11x86php-5.5.20ext
#php ext_skel_win32.php --extname=확장명 이름 입력
php ext_skel_win32.php --extname=widuuweb
이때 우리는 C:php-sdkphpdevvc11x86php-5.5.20ext에서 widuuweb 디렉토리를 보았습니다.
에서 widuuwebphp_widuuweb.h를 엽니다. #PHP_MINFO_FUNCTION(widuuweb); 다음 줄에 자신만의 함수를 작성하세요. 예를 들어 저는 widuu() 함수를 정의합니다
PHP_FUNCTION(widuu);
php_widuuweb.c를 열어 PHP_FUNCTION(confirm_widuuweb_compiled) 아래에 함수를 작성합니다.
PHP_FUNCTION(위두우){
char *arg_string = NULL;
int arg_len,str_len;
char *문자열;
If(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,"s",&arg_string,&arg_len) == 실패){
반품;
}
str_len = spprintf(&string,0,"첫 번째 확장자 %.78s는 괜찮습니다.",arg_string);
RETURN_STRINGL(string,str_len,0);
}
그런 다음 PHP_FE(confirm_widuuweb_compiled, NULL)를 찾아 아래에 함수를 등록하세요
const zend_function_entry widuuweb_functions[] = {
PHP_FE(confirm_widuuweb_compiled, NULL) /* 테스트를 위해 나중에 제거하세요. */
PHP_FE(위두,NULL)
PHP_FE_END /* widuuweb_functions[]의 마지막 줄이어야 합니다. */
};
C:php-sdkphpdevvc11x86php-5.5.20extwiduuwebconfig.w32를 수정하고 제거합니다
// ARG_ENABLE("widuuweb", "widuuweb 지원 활성화", "no");
이전 댓글, vs 명령줄에 cd..를 입력하세요. php-5.5.20 디렉터리로 이동하여 다음 명령을 입력하세요
buildconf --force
#확장 프로그램 보기
--help 구성
오류가 있는 경우 해당 디렉터리에 있는configure.js를 열어서 보시면 됩니다. 오류가 발생했습니다. 이는configure.js의 4791번째 줄입니다.
ARG_ENABLE("widuuweb", "widuuweb 지원 활성화", "no") */
추가 */ 주석이 있으니 제거하고
를 입력하세요.
--help 구성
방금 봤는데 줄이 있네요
--enable-widuuweb widuuweb 지원 활성화
그런 다음
을 구성하세요.
구성 --disable-all --enable-cli --enable-widuuweb=shared
PHP 동적 확장
그중 --enable-widuuweb=shared 동적 확장은 정적 확장과 정확히 반대입니다.
그런 다음 nmake를 입력합니다. 완료 후 테스트용 환경에 배치할 수 있는 C:php-sdkphpdevvc11x86php-5.5.20Release_TS 디렉터리에서 php_widuuweb.dll 파일을 찾았습니다.
로컬에 PHP 환경이 설치되어 있지 않고, 저처럼 그냥 PHP를 컴파일만 하신 분들이라면, 테스트를 하고 싶다면 정적 컴파일을 추천해 드리며 효과를 확인해보세요
구성 --disable-all --enable-cli --enable-widuuweb=static
엔메이크
그런 다음 Release_TS 디렉터리에
을 입력하면 됩니다.
php -r "echo widuu('widuu');" //"첫 번째 확장 widuu는 괜찮습니다" 출력
네, 그럼 앞으로 천천히 얘기해보겠습니다. 이해가 안 되는 부분이 있으면 메시지를 남겨주시면 기본적인 ZEND_API를 확인하실 수 있습니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











ETA Prime은 최근 ROG Ally X에서 Lossless Scaling이라는 유료 소프트웨어를 선보였습니다. 실제로 실제 게임 성능을 향상시키지는 않지만 소프트웨어는 프레임 생성 및 해상도 스케일링을 추가하여 경험을 향상시킵니다. 이 둘은 수

Bybit Exchange를 업데이트하는 방법은 플랫폼 및 장치에 따라 다릅니다. 모바일 : App Store에 업데이트를 확인하고 설치하십시오. 데스크탑 클라이언트 : 도움말 메뉴에서 업데이트를 확인하고 자동으로 설치하십시오. 웹 페이지 : 업데이트를 위해 공식 웹 사이트에 수동으로 액세스해야합니다. 교환을 업데이트하지 않으면 보안 취약성, 기능 제한, 호환성 문제 및 거래 실행 효율이 줄어 듭니다.

DeepSeek은 웹 버전과 공식 웹 사이트의 두 가지 액세스 방법을 제공하는 강력한 지능형 검색 및 분석 도구입니다. 웹 버전은 편리하고 효율적이며 설치없이 사용할 수 있습니다. 개인이든 회사 사용자이든, DeepSeek를 통해 대규모 데이터를 쉽게 얻고 분석하여 업무 효율성을 향상시키고 의사 결정을 지원하며 혁신을 촉진 할 수 있습니다.

Pinetwork 노드에 대한 자세한 설명 및 설치 안내서이 기사에서는 Pinetwork Ecosystem을 자세히 소개합니다. Pi 노드, Pinetwork 생태계의 주요 역할을 수행하고 설치 및 구성을위한 전체 단계를 제공합니다. Pinetwork 블록 체인 테스트 네트워크가 출시 된 후, PI 노드는 다가오는 주요 네트워크 릴리스를 준비하여 테스트에 적극적으로 참여하는 많은 개척자들의 중요한 부분이되었습니다. 아직 Pinetwork를 모른다면 Picoin이 무엇인지 참조하십시오. 리스팅 가격은 얼마입니까? PI 사용, 광업 및 보안 분석. Pinetwork 란 무엇입니까? Pinetwork 프로젝트는 2019 년에 시작되었으며 독점적 인 Cryptocurrency Pi Coin을 소유하고 있습니다. 이 프로젝트는 모든 사람이 참여할 수있는 사람을 만드는 것을 목표로합니다.

Docker 컨테이너를 사용하여 사전 컴파일 된 패키지 (Windows 사용자의 경우)를 사용하여 소스 (숙련 된 개발자)를 컴파일하는 것을 포함하여 DeepSeek를 설치하는 방법에는 여러 가지가 있습니다. 공식 문서는 신중하게 문서를 작성하고 불필요한 문제를 피하기 위해 완전히 준비합니다.

Microsoft는 Windows 게임 핸드헬드에서 오버레이를 더욱 유용하게 만드는 데 중점을 두고 Xbox Game Bar를 위한 새로운 컴팩트 모드를 발표했습니다. 이러한 장치에는 일반적으로 9인치보다 작은 화면과 다시 사용할 수 있도록 설계된 것들이 함께 제공됩니다.

Coinsuper Exchange의 공식 웹 사이트 입구 : https://www.coinsuper.com. 클라이언트 다운로드 채널은 Windows Client, MacOS Client 및 Mobile (iOS/Android)입니다. 등록에는 이메일, 휴대폰 번호 및 비밀번호가 필요하며 거래를하기 전에 실제 인증을 완료해야합니다. 이 플랫폼은 비트 코인, 이더 리움 등을 포함한 다양한 디지털 자산 거래를 제공하며 주문 및 수락자 모두에 대해 거래 수수료 비율이 0.1%입니다. 보안 보호 장치에는 콜드 지갑 저장, 듀얼 요인 검증, 자금 세탁 방지 및 테러 방지 금융 조치 및 보안 공개가 포함됩니다.

Bitget은 스팟 거래, 계약 거래 및 파생 상품을 포함한 다양한 거래 서비스를 제공하는 Cryptocurrency 교환입니다. 2018 년에 설립 된이 교환은 싱가포르에 본사를두고 있으며 사용자에게 안전하고 안정적인 거래 플랫폼을 제공하기 위해 노력하고 있습니다. Bitget은 BTC/USDT, ETH/USDT 및 XRP/USDT를 포함한 다양한 거래 쌍을 제공합니다. 또한 Exchange는 보안 및 유동성으로 유명하며 프리미엄 주문 유형, 레버리지 거래 및 24/7 고객 지원과 같은 다양한 기능을 제공합니다.
