問題タブ [php-cpp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
226 参照

php - PHP-CPP で Php::Value からクラス名を取得する

PHP-CPP を使用して PHP の小さな拡張機能に取り組んでいるときに、C++ 側でオブジェクトを含む配列を受け取り、そのクラス名を取得する必要があります。オブジェクト Php::Value にはメソッドがないようです。

この拡張機能で HNI と同様に: https://github.com/mcuadros/bson-hni/blob/master/src/encode.cpp#L86

0 投票する
2 に答える
1812 参照

php - php-cpp zend/php.hが見つかりません

私はphp-cppの可能性をテストしたかったのですが、「make」を使用している間、「php.h」が不足しています:

どうすれば修正できますか?私は osx10.9.3 を使用しています。関連する場合は、PHP プロジェクトに xampp を使用しています。php-cpp http://www.php-cpp.com/documentation/installのドキュメント。

0 投票する
1 に答える
582 参照

c++ - PHP-CPP の新しい拡張機能は、cli 'php' コマンドでは機能しますが、ブラウザーでは機能しません

PHP-CPP を使用して、mysql からテーブルを解析する関数を含む php 拡張機能を作成しています。

拡張子.cpp

コンパイル時に MakeFile を編集し、mysql_config --cflags --libsmysql をロードするためにコンパイラ コマンドに追加したため、コンパイルが正常に機能しているように見えますg++ -shared -o extension.so extension.o -lphpcpp mysql_config --cflags --libs

拡張機能から定義された関数 (ss_parse_table) を使用して、コンパイルが実際に機能するかどうかをテストしてみました。だから私はphpファイルを作成しました:

test.php

コマンド「php /mnt/test/index.php」を実行すると、CLIから正常に動作します。このコマンドは、定義された拡張関数 (ss_parse_table) によって返される配列を次のように出力します。

しかし、ブラウザから閲覧するとhttpが失敗します

「データを受信しませんでした」(Chrome エラー) または「接続がリセットされました」(Firefox エラー)

0 投票する
1 に答える
297 参照

c++ - PHP-CPP C++ 拡張で正規表現が見つからない

PHP 用の C++ 拡張機能を作成しており、コードで正規表現を使用しています。ここにスニペットがあります

コードのすべての部分を含めていないため (たくさんあります)、これはコンパイルされません。ここでは、エラーや警告なしですべて正常にコンパイルされます。この C++ コードから何かを使用するテスト php ファイルを実行しようとすると、次のエラーが発生して失敗します。

正規表現クラスを参照するメソッドとコードの一部を削除するとすぐに、正常に実行されます (インクルードを残すことができ、引き続き機能します)。

これらのコマンド ラインを使用してコンパイルします。

正規表現はC++ 11の標準ライブラリの一部であるため、実行時に自動的に行われるため、正規表現を手動でリンクする必要はないと思いますか?

PHPで動作させるために欠けているものはありますか? 正規表現オブジェクトは公開していません。C++ コードで目標を達成するための手段にすぎません。

0 投票する
1 に答える
97 参照

php - php-cpp でライブラリではなく php を拡張するための構文を追加する

私は、php 構文に何らかの機能を追加することに興味がありましたが、言語のモジュールを作成することとは異なることは明らかです。これには、php.net Webサイトで入手できるCのリソースを編集する必要があり、当然Cプログラミングの知識が必要だと思っていました。単に私は以下をしたい:

書くのではなく:

または、別の見方をすると、C# で可能なように、各クラスまたは関数に属性を追加します。

このアプローチを実現するための最初のステップは何ですか?

0 投票する
0 に答える
268 参照

php - php-cpp拡張クラスのarrayaccessが自己参照を返す

PHP のカスタム拡張機能に問題があります。自作オブジェクト用に Php::ArrayAccess を拡張しています。PHP で自分のオブジェクトをネイティブ配列のように使用できます。しかし、offsetGet の実装でオブジェクトへの参照を返しているにもかかわらず、演算子 [] をチェーンすることはできません。このエラーが発生します:

PHP 致命的なエラー: タイプ Jq のオブジェクトを配列として使用できません ... (0 行目の myfile.php)

および実行されるphpコード:

ご協力いただきありがとうございます !