ファイルをアップロードするためのhtmlとjavascriptを持つビューモジュールがあります。スクリプトをフッターにロードしたい (例として)。したがって、基本的にビューファイルはフッターまたはヘッダーの内容を変更できる必要があります。最初にページをバッファに読み込んでから、内容をテンプレート ファイルに出力することで、これを実行しようとしています。
私のコントローラーには、次のような機能があります-
public function test()
{
ob_start();
$this->load->view('content'); // uploader module
ob_end_clean();
$this->load->view('template', array($out1, $out2)); // ideally this will be output into a template file. right now i'm just trying to echo it
}
私のアップローダーモジュールは次のようになります-
<div>some div for uploading</div>
<?php $out1 = ob_get_contents(); ?>
<?php ob_clean(); ?>
<script>
Logic for uploading that needs to go in the footer
</script>
<?php $out2 = ob_get_contents(); ?>
<?php ob_clean(); ?>
テンプレートファイルは次のようになります -
<html>
<body>
<?php echo $out1; ?>
<scripts>other javascript code and includes</script>
<?php echo $out2; ?>
</body>
</html>
ただし、バッファーの内容を保存してコントローラー ($out1、$out2) に戻すことができません。これを実装する方法を知っている人はいますか?目標は、基本的に JavaScript コードの読み込みを遅らせることですが、コーディングを容易にするために JavaScript コードをコンテンツ ファイルに常駐させます。これを行う最善の方法は何ですか?グローバル配列または新しい親コントローラーが必要ですか?
ありがとう!