2016-06-18 4 views
0

私は使用したい関数php_strtolower(char *、unsigned int length)を見つけましたが、いつphp_win32プラットフォーム用のPHP拡張モジュールをビルドしようとしています私はそれを呼び出そうとします。win32 c内でphp_strtolowerを使用しています

ライブラリCの作成:\プロジェクト\ php_mt4_ext \デバッグ\ php_mt4_ext_debug.lib とオブジェクトC:\プロジェクト\ php_mt4_ext \デバッグ\のphp_mt4_ext_debug.exp Manager.obj:エラーLNK2019:未解決の外部シンボル 「__declspec(構造体_zval_struct * __cdecl GET_MANAGER_ERROR(構造体manager_object *、void *型* *、クラスSTD DLLIMPORT)のchar * __cdecl php_strtolower(のchar *、符号なし int型) "機能 で参照(__imp_?php_strtolower @@ YAPADPADI @ Z)" ::クラスのstd :: allocator>、int) " (?GET_MANAGER_ERROR @@ YAPAU_zval_struct @@ PAUmanager_object @@ PAPAPAXV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @D @ 2 @@ std @@H @ Z) C:\プロジェクト\ php_mt4_ext \デバッグ\のphp_mt4_ext_debug.dll:致命的なエラー LNK1120:1未解決の外部

私がやっているコードは、非常に簡単です、それは

php_printfを、以下同様です( php_strtolower( "hello"、strlen( "hello")));

私はphp5ts.libをインポートしていますが、他のすべてのPHP関数に問題はないようですが、これらの関数はそうしています。

私はこれらの機能を使用できるようにするために特別なトリックがあるかどうかは知っていますか?

答えて

0

問題は私が含まれていて、私のプロジェクトはC++ コードベースでした。

例えば

extern "C" {  
    #include <php.h>  
    #include <info.h> 
    #include<zend_exceptions.h>  
    #include <zend_interfaces.h>  
    #include <ext/standard/php_string.h> 
} 

だから私はそれが何の問題

せずにコンパイル、にextern「C」でPHPのヘッダを包む行うために必要な
関連する問題