php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #51052 mysql vs mysqli within output buffer handler
Submitted: 2010-02-15 22:24 UTC Modified: 2010-02-15 22:56 UTC
From: trobinson at gksystems dot com Assigned:
Status: Not a bug Package: Feature/Change Request
PHP Version: 5.3.1 OS:
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem:
24 - 11 = ?
Subscribe to this entry?

 
 [2010-02-15 22:24 UTC] trobinson at gksystems dot com
Description:
------------
I have a templating system which replaces placeholders with MySQL-derived content, using an output buffer handler.

Any html file can be used as a template, by placing one line at the top of the file:  <?php include('mysetup.php'); ?>
The beauty of output control EOF handling is that there is no need to add any PHP code at the *end* of the html file.

mysetup.php connects to a MySQL database, does some db work, then calls ob_start('myhandler');

As of PHP 5.1.x, all objects are destroyed before calling myhandler.

If I used mysqli_connect within mysetup, my db connection has been closed, so I need to reconnect in myhandler. 

However, if I used mysql_connect then my db connection is still valid within myhandler.

I discovered this when upgrading my code to use mysqli. I'm switching back to mysql, to avoid the overhead of connecting to the database twice.

It seems to me that it is a bit heavy-handed to destroy all objects before calling an output handler. It would be more reasonable to destroy just those objects created after registering the output handler.

MY FEATURE REQUEST: Please don't *break* the current behaviour of the mysql extension in a future version of PHP.





Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2010-02-15 22:56 UTC] johannes@php.net
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

The shutdown order is full of chicken and egg problems and we try to avoid touching it as far as possible. If there ever will be a change it will be well thought ... but I don't expect a change.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Apr 23 21:01:31 2024 UTC