Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:61677 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 80818 invoked from network); 24 Jul 2012 11:56:56 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 24 Jul 2012 11:56:56 -0000 Authentication-Results: pb1.pair.com header.from=sebastian.krebs.berlin@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=krebs.seb@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.42 as permitted sender) X-PHP-List-Original-Sender: krebs.seb@gmail.com X-Host-Fingerprint: 74.125.82.42 mail-wg0-f42.google.com Received: from [74.125.82.42] ([74.125.82.42:40346] helo=mail-wg0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A8/F2-17533-78D8E005 for ; Tue, 24 Jul 2012 07:56:56 -0400 Received: by wgbfm10 with SMTP id fm10so3123274wgb.5 for ; Tue, 24 Jul 2012 04:56:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:x-google-sender-delegation:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to :content-type; bh=3lxf1MCwPSVm/tOekejaRO9gP4Na4JRN7EjG37vDji8=; b=tfsQKBGvsKnAcu1igFtbxIkCx1teqyVrC9SfejM4ApBgF84r01GpOXqb+u0LKCyNq7 TuwCAXjlQ/vlBFjuOr5PIcqlVChLjJTv2Nt8TiPKmfpYAS/641XTM+GGESHTJwMNEwls Qo3wTLO/IJkOfGlvDSzyM+4R5TPoeYkionF1f7d90r5vpZhdSA+XDXaDlEFdmCvP1HAZ 7Wuvf4TSwdpZzl/3+A+Xa/JYw9xcdUbnJPP7WhCk1gXFUHDCpx9L7pMvM9sz4I9l+LX7 4ziINbm24w7T4ILD/Bvt54/Gu4fGuxxuKg3ZxI3dcO/oVdM6mJF6ivpRr4EV+uWbrQVR fbzA== MIME-Version: 1.0 Received: by 10.216.136.222 with SMTP id w72mr10189370wei.119.1343131013122; Tue, 24 Jul 2012 04:56:53 -0700 (PDT) Sender: sebastian.krebs.berlin@gmail.com X-Google-Sender-Delegation: sebastian.krebs.berlin@gmail.com Received: by 10.194.15.3 with HTTP; Tue, 24 Jul 2012 04:56:53 -0700 (PDT) In-Reply-To: References: <4B17D4B8-B310-4173-A0F2-C6514E7995BA@gmail.com> Date: Tue, 24 Jul 2012 13:56:53 +0200 X-Google-Sender-Auth: 87uxJahSfJBiy7Xh6UeFPxoAYhc Message-ID: To: internals@lists.php.net Content-Type: multipart/alternative; boundary=0016e6dab320ec8b9004c5920e73 Subject: [PHP-DEV] [RFC] Supports 'finally' keyword for PHP exceptions From: krebs.seb@gmail.com (Sebastian Krebs) --0016e6dab320ec8b9004c5920e73 Content-Type: text/plain; charset=ISO-8859-1 Sorry ... to the list instead. ---------- Forwarded message ---------- From: Sebastian Krebs Date: 2012/7/24 Subject: Re: [PHP-DEV] [RFC] Supports 'finally' keyword for PHP exceptions To: Laruence Hi, 2012/7/24 Laruence > On Tue, Jul 24, 2012 at 7:41 PM, Alexey Zakhlestin > wrote: > > > > On 24.07.2012, at 15:20, Laruence wrote: > > > >> Hi: > >> As the previous threads disscussed, I make a implemention. > >> > >> here is the RFC: https://wiki.php.net/rfc/finally > >> > >> any suggestions? > > > > Will it work without "catch" in your implementation? > nope for now. > > but if it is needed, I can implemente it > It is. 'catch()' usually means "I can handle it (at least partially)", but when 'finally' it just means, that the current scop wants to clean up ;) Additional I see myself already, that I "misuse" it like $f = fopen($file, 'r+b'); try { return search_in_file($f); } finally { fclose($f); } What I mean: I see myself already using 'finally' without ever expecting an exception, just because it feels so easy to never forget anymore to cleanup resources. Is this intentionally? Regards, Sebastian > > thanks > > > > try { > > doSomethingDangerous(); > > } finally { > > doCleanup(); > > } > > > > -- > Laruence Xinchen Hui > http://www.laruence.com/ > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > --0016e6dab320ec8b9004c5920e73--