This has me total confused.
Here is a view:
<?php
$this->load->view('page_header',$headers);
$this->load->view('banner');
?>
<div id=content>
<h1>How am I doing?</h1>
</div> <!-- content -->
<?php
$this->load->view('page_footer');
?>
page_header has an undeclared variable error in it.
If I run it as is then the How Am I Doing appears, but no page_header, banner or page_footer and at the bottom of the page I get
A PHP Error was encountered
Severity: Notice
Message: ob_end_clean() [ref.outcontrol]: failed to delete buffer. No buffer to delete.
Filename: libraries/Loader.php
Line Number: 648
If I look at the debug log I see the original error and each of the views being loaded
ERROR - 2006-11-15 11:36:12 --> Severity: Notice Notice --> Undefined variable: js /Users/phoebebr/Sites/ci151/system/application/views/page_header.php 28
ERROR - 2006-11-15 11:36:12 --> Severity: Notice Notice --> Undefined variable: js /Users/phoebebr/Sites/ci151/system/application/views/page_header.php 29
DEBUG - 2006-11-15 11:36:12 --> File loaded: /Users/phoebebr/Sites/ci151/system/application/views/page_header.php
DEBUG - 2006-11-15 11:36:12 --> File loaded: /Users/phoebebr/Sites/ci151/system/application/views/banner.php
DEBUG - 2006-11-15 11:36:12 --> File loaded: /Users/phoebebr/Sites/ci151/system/application/views/page_footer.php
DEBUG - 2006-11-15 11:36:12 --> File loaded: /Users/phoebebr/Sites/ci151/system/application/views/home.php
ERROR - 2006-11-15 11:36:12 --> Severity: Notice Notice --> ob_end_clean() [<a href='ref.outcontrol'>ref.outcontrol</a>]: failed to delete buffer. No buffer to delete. /Users/phoebebr/Sites/ci151/system/libraries/Loader.php 648
DEBUG - 2006-11-15 11:36:12 --> Final output sent to browser
DEBUG - 2006-11-15 11:36:12 --> Total execution time: 0.0710
Here is where it gets strange. If I put an echo statement in Loader just above the logging code and comment out the buffers like this:
// ob_start();
// If the PHP installation does not support short tags we'll
// do a little string replacement, changing the short tags
// to standard PHP echo statements.
if ((bool) @ini_get('short_open_tag') === FALSE AND config_item('rewrite_short_tags') == TRUE)
{
echo eval('?>'.preg_replace("/;*\s*\?>/", "; ?>", str_replace('<?=', '<?php echo ', file_get_contents($path))).'<?php ');
}
else
{
include($path);
}
echo '['.$path.']';
log_message('debug', 'File loaded: '.$path);
// Return the file data if requested
if ($return === TRUE)
{
// $buffer = ob_get_contents();
// ob_end_clean();
return $buffer;
}
I see the banner and page_footer views being loaded BUT NOT page_header
However, if I alter my view to call page_header twice
<?php
$this->load->view('page_header',$headers);
$this->load->view('page_header',$headers);
$this->load->view('banner');
?>
I see the page_header view being loaded and the errors are correctly reported.
page_header
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: js
Filename: views/page_header.php
Line Number: 28
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: js
Filename: views/page_header.php
Line Number: 29
[/Users/phoebebr/Sites/ci151/system/application/views/page_header.php]
This is getting too deep for me!!!!