amfext for PHP 5.3 확장 설치

2032 단어 C++cPHPlinuxwindows
1. amfext 다운로드
http://www.teslacore.it/wiki/index.php?title=AMFEXT
2. 컴 파일 설치 전 작업
윈도 시스템
Linux 시스템 에 대해 서 는 원본 amf. c 를 수정 해 야 phop 5.3 에서 make 를 통과 할 수 있 습 니 다.

On line 1188, replace:
int deallocResult = (*struc)->refcount;
with
int deallocResult = Z_REFCOUNT_PP(struc);

On line 2674, replace:
newval->refcount--;
with
Z_DELREF_P(newval);

AMFPHP 에 맞 춰 amfext 를 사용 하기 위해 서 는 다음 과 같은 수정 이 필요 합 니 다.

Check your apache logs for the errors. If the log contains the following line:
‘Symbol not found: _ZVAL_ADDREF’
or
‘undefined symbol: ZVAL_ADDREF’.
After making above changes to amf.c, You also need to replace ZVAL_ADDREF with Z_ADDREF_P to solve the problem.

3. 컴 파일 설치 시작

./configure --with-php-config=/usr/local/php/bin/php-config
make
make install

amf. so 생 성
4. 예
phopinfo 는 설치 에 성 공 했 음 을 표시 하지만 공식 적 인 예 입 니 다.

$r = amf_encode("hello world",AMF_AS_STRING_BUILDER);  // ask to return a SB
echo("returned type: " . $r . "
"); echo("returned length: " . amf_sb_length($r) . "
"); $sb1 = amf_sb_new(); amf_sb_append($sb1,"prefix"); amf_encode("hello world",0,"",$sb1); // store the result into the provided SB echo("returned type: " . $sb1 . "
"); echo("returned length: " . amf_sb_length($sb1) . "
");

AMF_AS_STRING_BUILDER 는 항상 정의 되 지 않 았 음 을 알려 줍 니 다.
또한 amfphp 는 amfext 확장 이 설치 되 어 있 는 지 여 부 를 자동 으로 식별 합 니 다. 설치 하면 amfext 인 코딩 디 코딩 을 자동 으로 사용 합 니 다. 그 결과 amfext 가 설치 되면 amfphp 가 작 동 하지 않 습 니 다. 원인 이 불분명 합 니 다 (조사 중)!

좋은 웹페이지 즐겨찾기