Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:109306 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 71805 invoked from network); 25 Mar 2020 20:00:34 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 25 Mar 2020 20:00:34 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F099B1804DD for ; Wed, 25 Mar 2020 11:25:17 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS2639 136.143.188.0/24 X-Spam-Virus: No X-Envelope-From: Received: from sender4-op-o11.zoho.com (sender4-op-o11.zoho.com [136.143.188.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 25 Mar 2020 11:25:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585160712; cv=none; d=zohomail.com; s=zohoarc; b=CKhur5aVml6dI5ukBJY8azwgVzHERSk/nWtd14rATX1DssWD5OY2ieeezZQ8Y/QbVaX0v3Qu703bcPF9NdDGsv8PSltlv9KO4XzCeLvmZgLj1/rHyxm3PvXrWcloRsBnfnH5FHbqUjt/Z4uskNOUfE7VdE7Y3+3pF74t1YCX3o4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1585160712; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=pya3cYmboyIuLA7BZCHmhKgr7AmXjwKj1NQgn/ehIeI=; b=X4pnd9b00hEOqgroFZtebcp8fUZb7OjW+BDOyOdTrengII4ySw1DNqgXpTRl174CsjoJXVAQg9wt0WFfP8yZ0/u5/fFlFSJXrBoA0s3YgeMp71yLDQSAqU0AGY6yrZHWXw2jTxNRTMuJg6Ymxbi+HU3ma8wNIf6xtBVqbeR4Fag= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=manuelcanga.dev; spf=pass smtp.mailfrom=php@manuelcanga.dev; dmarc=pass header.from= header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1585160712; s=zoho; d=manuelcanga.dev; i=php@manuelcanga.dev; h=Date:From:To:Cc:Message-ID:In-Reply-To:References:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding; bh=pya3cYmboyIuLA7BZCHmhKgr7AmXjwKj1NQgn/ehIeI=; b=O3a6DEiw0e2bsiPWDpVQ4C3TzX6F54XNCdTXgK/fmaie0zmRWusWus/yE2Bq9gbx IFTQnSF1wHwsG2pXXz3fe0gM84i7mmHaVJoFg9Nhv6pDSjGgJaGLG9LgP9tF5mA1V1U hp5LkCeBcFVZZIfOKgfi/zTTxgjwXYXMpr4FH2Q4= Received: from mail.zoho.com by mx.zohomail.com with SMTP id 1585160681630263.8463762939515; Wed, 25 Mar 2020 11:24:41 -0700 (PDT) Date: Wed, 25 Mar 2020 19:24:41 +0100 To: "Rowan Tommins" Cc: "php internals" Message-ID: <17112f0660f.1076e17cb50981.4711634832708165436@manuelcanga.dev> In-Reply-To: References: <047092C7-84FB-42AB-8084-7B83F76F55C1@me.com> <4513B88E-CA5B-4DF2-94C8-242BEE54ADCC@me.com> <767910ef-d27b-404c-9ad1-037105c69d12@www.fastmail.com> <2E98378A-605D-40ED-898C-6ABBFBD091B9@me.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail Subject: Re: [PHP-DEV] [RFC] switch expression From: php@manuelcanga.dev (Manuel Canga) Hi, internals, ---- En mi=C3=A9, 25 mar 2020 17:21:29 +0100 Rowan Tommins escribi=C3=B3 ---- > On Wed, 25 Mar 2020 at 15:29, Ilija Tovilo wrote: >=20 > > I don't think this would add any significant benefit over: > > > > ```php > > $x =3D true switch { > > $x !=3D=3D null && $x < 5 =3D> ... > > } > > ``` > > >=20 >=20 > The problem with that is that it requires a temporary variable to be > switched on. If I want to switch on, say, a method call, I can write thi= s > for equality: >=20 > $result =3D $this->foo($bar) switch { > 1 =3D> 'hello', > 2 =3D> 'hi', > 3 =3D> 'goodbye' > }; In this case, you can also do: $result =3D [ 1 =3D> 'hello', 2 =3D> 'hi', 3 =3D> 'goodbye' ][$this->foo($bar)]; With syntax very similar to proposed switch but this is using array. Regards -- Manuel Canga