2011-08-31 6 views
-1

Possible Duplicate:
How can I use C++ code to interact with PHP?PHP&のでエラー:クラス

を見つけていない私は、次のtest.phpをファイルがあります。test.hppファイル

<html> 
<head> 
<title>Personalized Hello World</title> 
</head> 

<body> 

<?php include "/home/test.hpp"; 

$s= new example(); 

?> 


</body> 

</html> 

は次のとおりです。

#ifndef TEST_ 
#define TEST_ 


class example 
{ 
    public: 
    example(); 
    void show(); 
}; 

#endif 

私がテストを持っています.soファイル。 私はphpのコンパイル:

PHP Fatal error: Class 'example' not found in /var/www/test.php on line 10 

これを解決する方法:私はエラーが発生しているphp test.php -dextension=test.so

? THX

+5

私はあなたがちょうどそのようなPHPコードでC++コードを 'include'できるとは思いません。 –

+0

あなたがしていることが可能なら、それは素晴らしいです! – xdazz

答えて

1

PHPスクリプトのC++コードをインクルードしようとしています。 PHPインタプリタはC++コードを解析できません。 PHPコードのみ。 PHPインタープリタなのでC++コンパイラではありません。これらは異なる言語です。

@ J0HNはアドバイスとして、あなたはそれを読むべきです:How can I use C++ code to interact with PHP?。これは、PHPにC++コードでインターフェイスする正しい方法である、PHPに拡張機能を書き込む方法を説明しています。

+0

あなたの助言のためにthx。私の.cppコード内のメソッドに接続する.phpファイルを作成し、.soファイルをすべてリンクするよりも、そうする必要があります。私を少し明るくしてください。これは、.cppファイルのメソッドに他の.hファイルが含まれているとどうなるのでしょうか?私は.php内のすべての.cppファイルをラップする必要がありますか? – sunset

+0

実際、PHPで使用するAPIをエクスポートして.soファイルとしてコンパイルし、PHPコードでこれらの関数を使用できる特別なモジュールをCまたはC++(AFAIR)に書く必要があります。 – slaphappy

+0

私はこの記事があなたを助けるはずだと思います:http://devzone.zend.com/article/4486-Wrapping-C-Classes-in-a-PHP-Extension – slaphappy