Login | Register
My pages Projects Community openCollabNet

Reply to message

* = Required fields
* Subject
* Body
Send reply to
Author (directly in email)
Please type the letters in the image above.

Original message

Author Alan Pinstein <apinstein@mac.com>
Full name Alan Pinstein <apinstein@mac.com>
Date 2006-07-22 09:57:10 PDT
Message SDO looks pretty interesting. Never heard of it.

However, I still don't think you answered my question.

You proposed using propel-gen to create C++ classes for objects that
could be compiled as a PECL, to get the execution speed of C++ with
the flexibility of Propel.

However, the propel generator creates a PHP object hierarchy, which
you then modify the Object.php and ObjectPeer.php classes with your
business logic.

I am not aware of the ability to expose classes via PECL. All the
times I have used it, it can return objects that implement
interfaces, but never actual PHP classes that could be extended.

For instance, if you use propel-gen-c++ to generate a MyObjectBase*
as a PECL, I don't think you can then, in PHP, do:

class MyObject extends MyObjectBase
  function customCode()
    // do something

I don't believe this is possible, but I am not certain. And if it's
not, the idea of propel-gen-c++ doesn't seem useful.

I know you said that it was done in the links you sent, but I don't
have time to dig through piles of links and CVS trees looking for
this example. Feel free to provide a direct link showing how this is


On Jul 22, 2006, at 12:39 PM, Pedram Nimreezi wrote:

> Am I sure it would be a good idea? Well I do have at least *some*
> evidence
> I mean IBM hasn't really done open source PHP until they did SDO
> which is
> a C++ and PHP API similar in purpose and design to creole and
> propel, SDO
> is to PDO as propel is to creole, meaning SDO relies on PDO for its
> data base
> accessibility. PDO unlike creole is written in C (afaik). SDO
> unlike propel in C++,
> PDO and SDO unlike propel and creole must be installed into PHP
> either statically
> through ./configure or dynamically through phpize, moved to the
> location specified in
> php.ini as extension_dir = and loaded like you would a
> standard .dll or .so extension.
> SDO does not have "optionally" a script-able interface to itself
> from PHP, it actually
> requires it since SDO was never completely ported to C++ from PHP,
> or they couldn't
> find the time to write the remaining portions so those objects are
> written in PHP 5, there
> is no PHP 4 version as SDO remains completely dependent on PDO for
> database access.
> Therefore I think it would be a *good* idea because they can be
> similar in speeds and propel
> can obviously spit out PHP 4, PHP 5 and now C++, why not PECL? or
> why not write the other
> classes as PHP 4 and PHP 5 compatible and then refactor that into a
> PECL so the only
> scripting is done on initialization code, makes little sense not to
> pursue this because *some*
> people cannot personally install an extension in their web server
> which would actually lower
> the load on the server and increase the throughput for this *good*
> type of programming.
> I would just like to say that I don't use SDO, I use propel
> and creole because I just like to,
> I rewrote creole and propel to be PHP 4 AND PHP 5 compatible and
> like that much better in
> my "rapid" framework whose design includes things for SEO and SOA.
> I've requested before at least for mine or the PHP 4 version
> be dual licensed under LGPL
> and BSD License, so that I can dual license MY framework under BSD
> license as well, also
> SDO is provided under much less restriction than the LPGL. I think
> helping make these patterns
> for advanced web application programming better and faster will
> help everyone. I know I wouldn't
> of had any reason to dedicate a couple years using propel and
> creole, or want to be involved had
> it not been for such good open source contributors like Hans, the
> PHP user groups and yourself.
> Ps, Here's a list of sites on the matter that may shed some light
> on SDO and PECL implementations
> where you can subclass classes and more. Don't forget to look all
> in the CVS code and tests..
> http://us2.php.net/sdo
> http://www.zend.com/​pecl/tutorials/sdo.p​hp
> http://www-128.ibm.c​om/developerworks/li​brary/os-sdophp/
> http://en.wikipedia.​org/wiki/Metadata
> On 7/22/06, Alan Pinstein < apinstein at mac dot com> wrote:
> Are you sure? Would you be able to subclass classes provided in PECL?
> One still needs to write custom business logic on their propel
> objects... how would that work?
> I don't know much about PECL so LMK!
> Alan
> On Jul 22, 2006, at 11:11 AM, Pedram Nimreezi wrote:
>> Ok.. but making them as PECL's is a good idea too... I might do
>> that...
> --
> ~
> Pedram Nimreezi -- President/Senior Engineer
> Major Computing, Inc
> --
> Not by age, but by knowledge is wisdom acquired.