問題タブ [phar]
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.
php - インデックスなしでPharアーカイブを作成するにはどうすればよいですか?
私は自分のライブラリの1つでPharアーカイブを作成しようとしています。libは、フォルダーとサブフォルダーに編成されたクラスの集まりです。ここにはindex.phpはまったくなく、オートローダーを開始するために呼び出す静的なConfigクラスだけです。
とにかく、私はこのようなアーカイブを構築しました:
その後、私はこのようにpharを使用しようとしています:
しかし、次のエラーが発生します。
警告:include(phar:// D:\ wamp \ www_test \ phar \ lib.phar / index.php)[function.include]:ストリームを開くことができませんでした:pharエラー:"index.php"はpharのファイルではありません9行目のD:\ wamp \ www_test \ phar \ lib.pharの「D:/wamp/www/_test/phar/lib.phar」
index.phpファイルを含まないpharアーカイブを作成するにはどうすればよいですか?実際、アーカイブがファイルのコンテナである必要があり、何も自動実行する必要はありません。
php - phar を phar に入れることは可能ですか?
まず最初に: 私の Phars は実行されます。私は少し遊んでいて、次のシナリオがあります。
- アプリケーション用の Phar (不規則なものはありません) (application-phar)
- たとえばライブラリ用の 2 番目の phar。(lib-phar)
lib-phar を application-phar に入れたいと思います。application-phar のみを必要とします。application-phar からのブートストラップ (スタブ) が lib-phar からブートストラップをロードするようにします。
これは私が思いついた最高の紹介リソースです: http://www.slideboom.com/presentations/26182/PHP-5.3-Part-3---Introducing-PHAR
私は次のものを持っています:
lib-phar
内部スタブ
アプリケーションファー
外部スタブ
主要
出力:
とても長いですが... 内側の index.php を実行するにはどうすればよいですか? 問題は、非常に紛らわしいことをしたいということだと思います:
これは読み取り可能な形式です: :
私の lib.phar は application.phar にあるためです。だから私はラッパーの周りにラッパーが必要だと思います。したがって、PHAR-Extension はこのために作成されていない可能性があります。ご覧のとおり、2 番目のスタブが呼び出されますが、魔法の__FILE__
定数 (およびPhar::running(TRUE|FALSE)
ここでは間違って設定されています。
あなたはなにか考えはありますか?または、同様のセットアップを行いましたか?
もちろん、私は代替案を知っています:
- lib + アプリケーションに 1 つのスタブと 1 つの phar を使用する
- lib.phar を一時的な場所に解凍し、そこから Phar::load() を使用してそれを要求します。
この入れ子のセットアップについて考えるのが本当に好きです。たぶん、あなたは別の素晴らしいアイデアを思いつきましたか?
よろしくフィリップ
php - PHP PHAR の予期しない問題
PHP 5.3 PHAR アーカイブを少しテスト/スクリプト作成/再生した後、いくつかの問題を発見しました。
グロブ
PHAR は glob では機能しません。ラッパー ( http://www.php.net/manual/en/phar.using.stream.php#104320 ) としても、関数呼び出しとしても。
私のテスト プロジェクトでは、PHAR 内のファイルを繰り返し処理し、グロブに相当する正規表現で結果をフィルター処理する必要がありました。
imagettfbbox
理由はわかりませんが、imagettfbbox も PHAR ストリーム ラッパーを理解していません。
ここでの最も簡単な解決策は、copy() を介してファイルを抽出することでした。(PHAR::extractTo は、スタックトレースも行番号もなしで例外を返します。)
私が期待すべき他の驚きはありますか?他に既知の問題はありますか? そして、それらはどこかに文書化されていますか?
php - PHP:クラス「Phar」が見つかりません
WebアプリケーションのベースとしてSilexフレームワークを使用しようとしています。ただし、*。pharアーカイブを含めようとすると、PHPは次のエラーをスローします。
次の関連する行が私の中にあります/etc/php/php.ini
(Silexのドキュメントで提案されているように):
PHARライブラリが存在し/usr/lib/php/modules/phar.so
、私のすべてのライブラリの拡張パスとして設定されていますphp.ini
PHPがこのエラーをスローする理由を誰かが知っていますか?
php - インメモリ PHP 配列を .tar.gz ファイルに圧縮する (PHAR?)
文字列として xml ファイルの大規模なメモリ内配列があります。
PHP (5.3) から読み取り可能/抽出可能な .tar.gz ファイルを作成する最も効率的な方法を探しています。
現在、私はこのクラスを使用しています。
しかし :
- メンテナンスされていないようです
- ファイルが必要です(そのため、数ミリ秒後に役に立たないメモリ配列から何千ものファイルを作成しています)
だから私は .tar.gz ファイルを処理する効率的な方法を探しています。最も重要なポイントは、次のような単純なコマンドでファイルを簡単に配置できることです。
$myArchive->putFileFromString($fileName, $dataString);
TAR & GZ で PHAR を構成することは可能のようですが、解決策になるのでしょうか?
おまけの質問ですが、メモリを節約するために (xml 文字列の生成ごとに) ライブでビルドする方がよいのか、それともこの巨大なオブジェクトを待って一度圧縮する方がよいのかわかりません。この場合、proc_usage / mem_usage の比率は不明です。
ターゲットの最大使用量は 100K XML ファイルです。
ありがとう!
php - インクルードは、実稼働サーバーの phar アーカイブ内では失敗しますが、ローカル開発サーバーでは失敗します
与えられたエラーは
phar アーカイブがロードされているようですが、アセットを含めようとすると失敗します。これのトラブルシューティングをどこから始めればよいのか、私は途方に暮れています。ローカル マシンでは完全に動作しますが、本番サーバーにアップロードすると (重要な場合は plesk を実行しています)、失敗します。
Phar が有効になっているようです。phpinfo() から:
登録された PHP ストリーム
https、ftps、compress.zlib、compress.bzip2、php、ファイル、グロブ、データ、http、ftp、phar、zip
これを引き起こしている可能性のあるアイデアはありますか?
php - エラー: pecl 経由で php_phar をインストールしようとすると、DSP phar.dsp が存在しません
pecl 経由で php 5.3.8 / windows7 x64 に php_phar をインストールしようとすると、次のエラーが発生しました。
(拡張機能ディレクトリに php_phar.dll がありません)。
この問題について何もググることはできません。
php - PHP phar 可能な使用法
5 7 のコンポーネントを持つ新しいポータル アプリケーションを php で開始します。数か月前に php phar について読み、各コンポーネントの phar を個別に作成し、それらを何らかの方法で使用することが有益かどうか疑問に思いました。私はアプリケーションを開始しようとしていますが、以前に phar の経験がないため、使用するかどうかについて、スタック オーバーフローの担当者から意見を求めたいと思っています。
phar を使用するための私の心にある主なテーマは、サイト管理者がコンポーネント全体を有効/無効にできるパネルを作成することです。また、必要に応じて、より多くのコンポーネントをプラグインします。.net DLL と同じ概念
よろしくジュナイド
php - PHAR ファイルの編集
phar ファイルを編集しようとしていますが、増分更新がサポートされていないことと、phar ファイルを抽出してその内容を編集し、再度圧縮して使用できるようにする必要があることを理解しています。
phar ファイルを抽出する方法がわかりません。簡単なハウツーをいただければ幸いです。私は現在Windowsを使用しています。
php - 致命的なエラー: クラス 'Silex' が見つかりません
アプリケーションを構築するために silex を試しています。最初のアプリケーションをテストしようとすると、次のようなエラーが発生します。
致命的なエラー: クラス 'Silex' が /opt/local/apache2/htdocs/silex/try.php の 5 行目に見つかりません
これは私のコードです:
検索エンジンでエラーを検索しましたが、次のコードを php.ini に追加するなどの提案があります。
しかし、Web ブラウザーでテストすると、まだ同じエラーが発生します。あなたの提案は何ですか?