Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:63075 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 68524 invoked from network); 18 Sep 2012 17:10:43 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 18 Sep 2012 17:10:43 -0000 Authentication-Results: pb1.pair.com smtp.mail=ralph@ralphschindler.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=ralph@ralphschindler.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain ralphschindler.com from 209.85.214.170 cause and error) X-PHP-List-Original-Sender: ralph@ralphschindler.com X-Host-Fingerprint: 209.85.214.170 mail-ob0-f170.google.com Received: from [209.85.214.170] ([209.85.214.170:56970] helo=mail-ob0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 45/F2-07072-11BA8505 for ; Tue, 18 Sep 2012 13:10:42 -0400 Received: by obbwc18 with SMTP id wc18so99915obb.29 for ; Tue, 18 Sep 2012 10:10:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding :x-gm-message-state; bh=EW67T0QRs7RqFa4QMTW50F30TWJmEw6E8NPntpHJb3k=; b=Og2xUpFNjqYGag2rOwEKVh4cHROH+XwuOuKV6LgbHHXC6+ydmCwna+uh4Ir6kThSVj rUuzmAXUt1I89ZdSdfgEeJFnBajYo1YnnmhEhn/aLTzVdBjHmNX0iYVfO9Dfv+YEwC1I USat/Rh9MYZL48lXQ0pwcXlImS9ldqy8hi8//j3C9L9GobuN6VCFcgdbOAPzPw4TnsEb HRWX5qqVZ2+xY/9OHwQvdzLA3zGb4SsHN06bvtMCb5DMKuSXU8+Gv9l/jXow7XavvlZt wxon21dZuOgA2wPLSe7Es3flE5ZXvnTTDxlLMplz8nIhx864BiaofhB1kR85KA0/Qvg/ 0PlA== Received: by 10.60.170.104 with SMTP id al8mr808673oec.78.1347988239116; Tue, 18 Sep 2012 10:10:39 -0700 (PDT) Received: from Ralphs-Mac-Pro.local (ip174-73-14-247.no.no.cox.net. [174.73.14.247]) by mx.google.com with ESMTPS id rg10sm123265obc.14.2012.09.18.10.10.37 (version=SSLv3 cipher=OTHER); Tue, 18 Sep 2012 10:10:38 -0700 (PDT) Message-ID: <5058AB0B.3060105@ralphschindler.com> Date: Tue, 18 Sep 2012 12:10:35 -0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 MIME-Version: 1.0 To: internals@lists.php.net References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQntp6AAlNdbNx2bNK5AusLvxcFjYnQg7qzBvWFAYHtudmSFb75gqUpJXvgBONbrpBYvN/ga Subject: Re: [PHP-DEV] constructor hook From: ralph@ralphschindler.com (Ralph Schindler) This is one of the main use cases of AOP. Demonstrated by this script: setArguments(array(new Bar)); } aop_add_before('Foo->__construct()', 'doDi'); $f = new Foo; // 'instance of Bar' -ralph On 9/18/12 11:22 AM, jpauli wrote: > On Tue, Sep 18, 2012 at 5:14 PM, Amaury Bouchard wrote: >> Sounds to me like aspect-oriented programming, applied to object construction. >> Take a look at: https://github.com/AOP-PHP/AOP > > +1, this is the same case as AOP, but for constructor. > Thus AOP may fit the need. > > Julien.P >