問題タブ [php-extension]

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 に答える
491 参照

php - Windowsで自分のPHP拡張機能をコンパイルしましたが、LNK2005エラーが発生しました

私はVC2008Expressを使用しており、それを使用して独自のPHP拡張機能をコンパイルしようとしました。次のエラーについて何か考えはありますか?

0 投票する
3 に答える
433 参照

php - ITL 拡張機能のインストール方法

PHP ITL 拡張機能を使用できるようにインストールしたいと考えています。

これをコンパイルする必要がありますか? もしそうなら、どのようにコンパイルすればよいですか? Windows と Linux の両方で動作する必要があります。

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

php - Ubuntu (Karmic Koala) での PHP 拡張ライブラリのコンパイル

しばらく前に、XP プラットフォームでいくつかの PHP 拡張ライブラリ (C/C++) をコンパイルしました。ソースを Ubuntu ボックスに移動したので、Linux ボックスで使用するライブラリをビルドしたいと考えています。

ただし、いくつかの障害に遭遇しました。

  1. phpize が見つからない (php5dev パッケージをインストールした後でも)
  2. スケルトン スクリプト/ファイルを生成するための ext_skel が見つかりません

[編集]

Pascal Martinとこの質問のおかげで、小さなライブラリの 1 つをビルドしてテストすることができました。他のライブラリに進む前に、.m4 ファイルの内容を再確認したいだけです (形式に慣れていないため)。

これは、自動生成された .m4 ファイルの内容です。この形式に精通している方であれば、その意味を説明できますか?これにより、ファイルの正しいセクションのコメントを解除したことを二重に確認できます。

config.m4 ファイルの内容は、すべての詳細で以下に表示されます。

誰かが上記を理解していますか?

ところで、上記の config.m4 ファイルは Autoconf 2.50 を使用して生成されました (私はここのドキュメントも見たばかりで、ゆっくりと消化しています。

0 投票する
3 に答える
3966 参照

php - コードベースで使用されている PHP モジュールを一覧表示する

特定のコード ベースに必要なすべての PHP 拡張機能をリストする必要があります。この問題に取り組む最善の方法は何でしょうか?

私の最初の考えは、すべてのファイルを調べてすべての関数を見つけ、それらを特定の拡張機能/関数データベースと比較するスクリプトを作成することです。他の提案はありますか?


更新: 私はすでに grep と get_loaded_modules、get_extension_funcs PHP 関数を使用していくつかの Bash スクリプトを実行しましたが、この拡張機能はまさに私が探していたものです。

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

php - C++用のPHP拡張ラッパー

私はPHPの拡張機能を作成するこの分野では初めてですが、C++からPHPへのラッパークラスを作成する必要があります。私は現在PHP5.2.13を使用しています。この記事http://devzone.zend.com/article/4486-Wrapping-C-Classes-in-a-PHP-Extensionを読みました。これは、C++クラスをラップしてPHPZendと通信する方法に関するチュートリアルです。 Linuxシステム用に書き込まれます。PHPと通信するためのラッパークラスの作成に進む方法についての記事やアドバイスはありますか?

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

php - Win32 PHP 拡張機能の開発

Windows で独自のライブラリのネイティブ サポートを作成するために、PHP 用のロード可能な DLL モジュール エクステンションを作成する最初の手順は何ですか?

WindowsでPHPを再コンパイルする必要がありますか? 必要なツールは何ですか? exec とコマンドラインを使用する必要はありません。

0 投票する
3 に答える
622 参照

php - カスタム php 関数の作成とインストール

次のような組み込み関数と同じように、php にインストールできる php 関数を作成する方法を知りたいです。

私が達成したい主なポイントは、ホスト全体の任意の php ページから呼び出すことができる単純な php 関数です。php ページ内に php 関数を含める必要はありません。

だから単純に、次のように機能する関数を作成したいと思います:

指定された入力文字列がないと、echo などを介してファイルの現在の場所が出力されます

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

php - PHP拡張機能を学ぶために最も推奨されるリソースは何ですか?

PHP拡張機能を開発する方法を学ぶ必要があります。
したがって、CPPスキルを更新する必要があると思います(またはCですか?)。
どのIDEを使用する必要がありますか(オートコンプリート、オブジェクトブラウザなど)。Ubuntu 32で開発する予定です。学ぶことができる良い本やウェブサイトはあります

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

php - 動的にロードされた拡張ライブラリでPHPUnitを実行することは可能ですか?

拡張機能用の一連のPHPUnitテストがあり、拡張機能のHudsonビルドプロセスの一部として実行したいと考えています。

そのため、実行時にロードする拡張ライブラリを指定してPHPUnitを実行したいのですが、これを行う方法がわかりません。

私のディレクトリ構造は次のとおりです。

次のように、構成XMLファイルを使用してPHPUnitを実行してみました。

そして、次のように実行します(testsディレクトリから):

しかし、それから私は取得Fatal error: Call to undefined function myfunction()するので、ライブラリをロードしていません。

私も試しました:

またdl('myextension.so')、テストのセットアップにも、喜びはありません。

関連する場合、これはPHP5.2およびPHPUnit3.4.11を使用しています。

この質問をPHPUnitユーザーのメーリングリストにクロスポストしました。

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

php - PHP5 での致命的/解析エラーのログ記録

サーバー上で実行されている Web サイトに統合され、エラー バッチなどをメールで送信するエラー ログ サービスを作成しています。

そのため、致命的なエラーと解析エラーを処理する方法があるかどうかを調べようとしましたが、PHP コード (出力バッファー、シャットダウン関数) でそれを処理するためのトリックを使用していません。PHPコードの外でCコードまたはそれを処理する何かを書くことができてとてもうれしいです。可能であれば、リダイレクトも発行したいと思います (私のサイトは出力バッファリングを使用しているため、ヘッダーが送信されることはありません)。

これは PHP モジュールを使用して実行できると確信していますが、作成したことがなく、どこから始めればよいかわかりません。