問題タブ [ob-get-contents]
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 - PHPコードをその場で解析し、一時変数に保存します
サポートする必要があるのはほんの少しの操作だけなので、独自のテンプレートシステムを作成しています。それらの1つは、テンプレート内のデータベースから生成された動的データを使用してウィジェットをロードすることです。
PHPコードを解析し、結果を表示せずに変数に格納してから、その変数から生成されたソースを別の場所で使用する方法はありますか?
現在使用してob_get_contents()
いますが、echoコマンドを使用すると、それが無効になり、コンテンツがサイトの最初のものとして表示されます。これは、どういうわけか回避したい動作です。
それは可能ですか?それとも私はob_get_contents
完全に誤用していますか?
caching - goto なしで変数を前のポイントに転送する
gotoなしでこれを書く方法:
このエコーを取得するには:
要件:
1.順序を変更することはできません (CORE( echo $a )、および PLUGIN( $a=5 )):
2. ob_get_contents() を介して出力を生成する必要があります。
しかし、私は場所に任意のコードを書くことが許されています.
// 解決 ob_get_contents(); 出力 HTML コードの数行を置き換えたいが variable の値を変更できない場合にのみ役立ち、ランダムな HTML コードを生成する ALGORHYTM (var 値に依存) を変更します。
また、コードを確認したところ、GOTO ラベル ステートメントを使用しても、コードが $output1 の内容を変更しないことがわかりました。どうやってするか?唯一の方法は、最初から $output1 を再キャッシュすることです。それとも、他の方法でこれを行うことができますか?
php - ob_get_contents が何らかの理由で機能しなくなった
このスクリプトは数週間問題なく動作し、その後理由もなく動作を停止しました。
1.<?php
2.ob_start();
3.include "weather xml website";
4.$data=ob_get_contents();
5.ob_clean();
6.
7.$xmlFile = 'filelocation\weatherData.xml';
8.
9.
10.$fh = fopen($xmlFile, 'w') or die("can not create or open $xmlFile");
11.
12.fwrite($fh, $data);
13.fclose($fh);
14.?>
私は Google と Msn の天気 API を使用しており、参照することで xml データをうまく受け取ることができ、ファイル ハンドラーはローカル xml を作成および編集できます。このスクリプトは、30 分ごとに実行されるスケジュールされたタスクとして設定しました。
私が使用すべき別の方法はありますか?キャッシング?どんな助けでも大歓迎です
php - ループ内の ob_start()
foreach() ループを使用してループし、このループ内で ob_start() および ob_get_clean() を使用するときに問題が発生しました。
これが私の機能です:
この関数は基本的にメールの内容を生成して返します。
私が抱えている問題は、同じメール コンテンツを送信するために多数のメール アドレスをループ処理する場合です。最初のメール アドレスだけがコンテンツを返します。次のメール アドレスは空白です。理由はわかりますか?
php - 複数のインスタンスがWordPressのショートコードを壊す
idに基づいて作成者プロファイルを表示するショートコードを作成しました。たとえば、[user-profile id = "1"]は、作成者1のuser-profile.phpで定義されたプロファイルブロックを表示します。これは機能しました(同じページに複数のインスタンスがある場合でも)。
...コード内の場所に関係なく、ショートコード出力が他のエントリコンテンツの前に表示されていた場合を除きます。これを解決するために、私はこの修正を追加しました:
...これはポジショニングの問題を解決するために機能しましたが、ショートコードの複数のインスタンスを壊しました。[user-profile id = "1"]は機能しますが、[user-profile id = "1"] [user-profile id = "2"]は機能しません。その時点で、ページの読み込みが停止します。
複数のインスタンスを許可するようにこれを変更するにはどうすればよいですか?
php - mysqlレコードからphpコードを返すには?
次のようなプレーンテキストのみが含まれている可能性のあるmysql行の「コンテンツ」レコードからphpコードを返す方法:
Hello!
または/およびphpのような:
Lets try some php: <?php echo phpinfo(); ?>
プレーンテキストのみが含まれている場合、ケーシング速度のパフォーマンスはありませんか?
include() を使用して php を返す場合の例を次に示しますが、この場合は私が求めているものではありません(すべてのコンテンツ php が mysql から取得される場合を求めています)。
mysql レコード:
test.php コンテンツ<?php echo phpinfo(); ?>
mysql トラフ include() から php を返そうとしています:
php - URL からの出力の取得。PHPを使用してURLからPDFを強制的にダウンロードするにはどうすればよいですか
レポートを jasperserver レポート エンジンから PDF として取得する必要があります。次に、PDF をブラウザに表示するのではなく、強制的にダウンロードする必要があります。ブラウザーに表示する際の問題は、URL でレポート パラメーターをエンド ユーザーに表示したくないことです。
この URL パスをブラウザーに入力すると、同じブラウザー ウィンドウにすべてのレポート データが表示される PDF ドキュメントが表示されます。
私が望むのは、ダウンロード ダイアログ ボックスを使用して、ユーザーが PDF をブラウザーに表示する代わりに自分のコンピューターにダウンロードできるようにすることです。
次の php コードを試しましたが、動作しません。false の戻り値が返されますが、サーバー ログにはエラーを示すものはありません。
これについてどうすればいいのかよくわかりません...誰かアイデアがありますか?
助けてくれてありがとう。
php - (PHP)以前のINCLUDE / REQUIRE呼び出しを子ファイルに渡す方法は?
ob_get_contents()
をコアメソッドとして使用して、独自のテンプレートスクリプトを作成しています。これを使用することで、1つのファイルから呼び出して他のファイルをレンダリングできます。
同様に、4つのファイルがあると仮定します。
- index.php
- header.html
- footer.html
- 関数.php
index.php
他のファイル(ここでは2つのhtmlファイル)の内容を呼び出してレンダリングします。次のコードを使用する。
ただし、(たとえば)にheader.html
呼び出しが含まれている場合include('functions.php')
、含まれているファイル(functions.php)をで再度使用することはできませんfooter.html
。つまり、にもう一度インクルードする必要がありますfooter.html
。したがって、ここでは、行include('functions.php')
が両方のファイルに含まれている必要があります。
include()
子ファイルから再度呼び出さずにファイルを作成するにはどうすればよいですか?
php - PHPフォームの出力を変数に保存する
フォームの出力とmysqlに投稿されたデータを使用して動的フォームを正常に作成しました。私が今やりたいのは、phpの出力を変数に保存し、それをpdf生成のためにhtml2pdfに渡すことができるようにすることです。現在のファイルの概要と、以下の内容を説明しました。
私が持っているもの:
欲しいもの
ob_start()のようには見えません。およびob_get_clean(); 必要な場所に移動し、phpのヒアドキュメント文字列も実行しません。任意の考えや例をいただければ幸いです。
php - php --ob_start / fputsが突然機能しなくなりましたが、それを止めることができるものはありますか?
私のコード:
これは、WordPressからログを記録するためにローカル環境(MAMP)で常に使用している機能です。それは常に機能しました。今ではもう動作しません。理由を数日間理解しようとしましたが、解決策が見つかりませんでした。私は本当に高度なphpプログラマーではないので、私が知らないことやすべきことがあるかもしれません。誰か助けてくれませんか?
ちなみに、function_existsとfile_existsは、私が呼んでいるところからです。