On Fri, Apr 24, 2015 at 1:16 PM, Arvids Godjuks <arvids.godj...@gmail.com> wrote: > 2015-04-24 4:42 GMT+03:00 Benjamin Eberlei <kont...@beberlei.de>: > >> On Thu, Apr 23, 2015 at 3:45 PM, Arvids Godjuks <arvids.godj...@gmail.com> >> wrote: >> >> > PDO is everywhere. Doctrine? Based on PDO. >> >> >> You can use mysqli, oci8 or sqlsrv for example without problems in >> Doctrine. >> >> Exposing some of the internal api of PDO as php functions (SQL Parser) I >> would bet it is possible to reimplement PDO in PHP code using mysqli etc.. >> as "drivers". >> >> I think we could discuss going that road as well and we could save >> ourselves maintaining some thousands of lines of C code. >> > > May I question the sanity of the words written in this email? :D (it's a > joke). > > The whole point of mysqlnd drivers and other improvements was to cut down > on data copying, improving performance and doing a lot of other stuff. > Moving PDO to a PHP implementation will kill it all: preformance will > suffer,
I am totally certain that performance will be that bad. Indeed slower but in relation to the DB IOs, they could be within an acceptable margin. > memory usage will skyrocket, here as well, even less with 7 or already with 5.5+, if done wisely (did not check PDO lately but it could be improved if not already) > dealing with charsets - I don't even > wana pretend I understand how to deal with that part in a proper fasion. > Doesn't it require access to internal PHP api's to do a lot of what PDO and > other native drivers do? It is called userland hooks, no big magic required. See https://pecl.php.net/package/mysqlnd_uh for something similar. Not really prod ready or whatever but a good example to see how something similar could be done. > Well, the Zephyr could pitch in here, MAYBE, depending on how good it > actually is and what it can do, but still, it feels more like a cruch to me. Good point, not sure how far it exposes PHP internals APIs or if it does it the same way than it does for system libraries :) Cheers, -- Pierre @pierrejoye | http://www.libgd.org -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php