Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:67192 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 17499 invoked from network); 29 Apr 2013 15:32:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 29 Apr 2013 15:32:57 -0000 Authentication-Results: pb1.pair.com header.from=alex@kazik.de; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=alex@kazik.de; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain kazik.de designates 209.85.210.41 as permitted sender) X-PHP-List-Original-Sender: alex@kazik.de X-Host-Fingerprint: 209.85.210.41 mail-da0-f41.google.com Received: from [209.85.210.41] ([209.85.210.41:43561] helo=mail-da0-f41.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 15/D2-00193-8A29E715 for ; Mon, 29 Apr 2013 11:32:57 -0400 Received: by mail-da0-f41.google.com with SMTP id p8so1425567dan.28 for ; Mon, 29 Apr 2013 08:32:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kazik.de; s=google; h=x-received:mime-version:sender:x-originating-ip:in-reply-to :references:from:date:x-google-sender-auth:message-id:subject:to :content-type; bh=uJgIx3mxEYSlQZCc/WE0KoeFEeZ4nUDUyHOGV+vaP08=; b=lnVf8deEK+j5zgNScCnObyO4vXnPVGCGkaEs18Mtjfx6AmFK+kQZMWDOlRyKcHX3Zx EmD+lpFKdFQcPaijiitwE0ZlJvrLcZy13F47T4KJKNCQboSdU6XFFvKbGcd+UjN1j+BI hVLFxYyyQPS2qgRO76fT3mDLAkXp/BDarQqIA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:sender:x-originating-ip:in-reply-to :references:from:date:x-google-sender-auth:message-id:subject:to :content-type:x-gm-message-state; bh=uJgIx3mxEYSlQZCc/WE0KoeFEeZ4nUDUyHOGV+vaP08=; b=fsWdosh3GH7YW7CUGYK27EEDhnN2aNErr+GMudetme1cw68abRUaBCVOp6Rx33D9CS 9Lu9EdTDQqyfSLa6IhFa7e+VWzEjcq01mw073Kdt9M5gdC+KLQYsdgONh00WRFFWak5s fnShv4J0Bi9E708CD1QDuhFYocHVa1Rkzbzu8Z26ZcKVzHls8thfvyn5BZiPHGre1HSE E2ByBtisCVOrO+aopuNTd/0jTyJSlfIypNMIdzpwPnG+M9TuwRdq2yyjxDnNk+3/tgVx j8JOBlVCalnUZNDkwGGCrqwxIe7FcjwHGfnimOAcaIMR9MCUjAXTXZY72VInk5ClMiLr CYzg== X-Received: by 10.68.221.69 with SMTP id qc5mr60757202pbc.7.1367249574023; Mon, 29 Apr 2013 08:32:54 -0700 (PDT) MIME-Version: 1.0 Sender: alex@kazik.de Received: by 10.68.16.9 with HTTP; Mon, 29 Apr 2013 08:32:33 -0700 (PDT) X-Originating-IP: [212.8.208.194] In-Reply-To: <1367248347.2723.1918.camel@guybrush> References: <2284A817-6E8E-44AB-BEF2-2BA1923A3BAA@strojny.net> <1367248347.2723.1918.camel@guybrush> Date: Mon, 29 Apr 2013 17:32:33 +0200 X-Google-Sender-Auth: mLS_M-Yx4YNYHKLAeoAlj1jwkvo Message-ID: To: PHP Internals Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQkTeDLoFPCLJHZHzVWjJJIU0S1k91NZXBQe4I7ngQR+De/+1zsn+NARyss2PqtzKXlqpMVp Subject: Re: [lists.php] Re: [PHP-DEV] Continued try blocks From: lists.php@tx0.eu (ALeX) HI, I also really don't like it. if you have a try/catch within a for, will it continue the try or for? (or have I to use "continue 2" to reach the for) At least use another keyword to make it more clear that you don't want to continue a loop at the beginning but a catch statement after the exception. I would have solved your example like this: try { try { $user = $repository->findById(123); } catch (NotFoundException $e) { $user = new User(); } try { $user->setName($name); } catch (ValidationException $e) { $user->setName($this->stripInvalidChars($name)); } $em->save($user); return true; } catch (Exception $e) { return false; } I think that's more clear - but a few lines longer. And it's probably more save, when the "$em->save($user);" throws a NotFoundException exception then a new user will be created and then (without saving) true is returned.