Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:123366 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 655751A009C for ; Sun, 19 May 2024 11:15:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1716117381; bh=gNIiMD0b9wdbfTjpgJoQa99ZV0JhrpAbiCKymZXGMiI=; h=References:In-Reply-To:From:Date:Subject:To:From; b=HjBBzKu7YYlyKpVz9F5YsnWyYUsKyYXH2girHYvqqbrAJPTuOI/390G3s9Zg34YEC 8aldkKuXuL+Tbo1QVgrI3iWlq7dv7rckqMmGSo/gFyE6DIyX5DxE9Pcs6hFJKFelnl px+uOvpVmywBr42eiaseQkGbDCU6vIujj/94vPENqoBaFn0HRFQQsuhZ78VU4Q5L6B A9sBH6Z9t/dcRjMWQj9AUqXJ4+qv1d7JDjfMPVz57vCKqsXeVL5pX+1j+Qz5T5kRk1 oi8yQtS0jL6OynG7GjpiHjCOS+w5kZSYarsITYkuJWaBlulw0FPYu2G4SKzZq/t2J0 BX8VW9IDByp2g== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 6C08218006D for ; Sun, 19 May 2024 11:16:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com [209.85.222.182]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sun, 19 May 2024 11:16:19 +0000 (UTC) Received: by mail-qk1-f182.google.com with SMTP id af79cd13be357-792bd1f5b28so208357585a.2 for ; Sun, 19 May 2024 04:15:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716117324; x=1716722124; darn=lists.php.net; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=gNIiMD0b9wdbfTjpgJoQa99ZV0JhrpAbiCKymZXGMiI=; b=PbdkVwbmTjBuuGr50oifFVX7jxb4nzhp/IVAgXYnY+Wn9UrDreYbgEDI21CTloejGr KPk655t19hPlEwKb0eV3HPJHDoUmVX5eZffET/yBXQYxnZ5ipbZvXZyxG+kS2xqATgN1 ae4jVIw0GKvIYN7odrjqEAW5WzJeOzXQRcMYwEFDMQ9cta6QzHczehDAldIW4qJWVE7y +q5rut6oQYJcgo5F6lG5IE7+tQMFo4Wk7Fvt7oYvIkBf4xsMV4CxmgWnVVUTpyt0+de9 ovwKpTPJ5+nSXvSU0W9Q7eBp8tZiPlBv978PnoR7V5I+AYmGCuMxkOEaKuzwWE1IvCT3 IV0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716117324; x=1716722124; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gNIiMD0b9wdbfTjpgJoQa99ZV0JhrpAbiCKymZXGMiI=; b=IPMNy0ENmm+jLd43ObNOoLYTMT19jAzphjdtC16vB/FWKTwHe3ujkFEWmhWrYO41DM BnDJammB75Eze3Sy4EXOMZaxbBdSFE3hYfljf5QlDqfeNMrSaXtOAI/vhG/xJYuD+7h1 CoVavJQuTx14OOMsIUOndhIPfwOGzuv8a3X2YVgoYWY51c9E0QghF71ds1h1L74rE+hT IV87y+VtL8YN4Xka/imCY9cZVtWRby4+w85p4FjFLD7cR3Buf4iS/s1npBTaoO0semV8 xaohOgIa5P2rBqQjxb1k/fdRmnl/1q9XDBn8KJaaW6h4qmWltp7FHSPojnCmDuBZJXTM MTlw== X-Gm-Message-State: AOJu0Yx0pvNGZzevYmsVm47y8jL8vo8TRqfAMmvtedRmle58QP15LiAQ AVGVUloKO+wN+0vxPdkvCzWUy0MJWvsQQLw8mKOzCjt3zla131ppRRwGScG5WDVt5BOzzBlwqN2 lpolORcGyPOfMhNehIAxDlj1WzI685GQwgPZSUQ== X-Google-Smtp-Source: AGHT+IH4Gi0lT0V0PzMciWAS3nH4dv60XIeI6u1PwWUq4DCsz6ZIU5xLJcVw+z4qVqhYYZqr0o1Xgq9+mVCSmUDcWUg= X-Received: by 2002:a05:6214:2dca:b0:6aa:9287:b2e5 with SMTP id 6a1803df08f44-6aa9287b566mr1214406d6.3.1716117323709; Sun, 19 May 2024 04:15:23 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net MIME-Version: 1.0 References: In-Reply-To: Date: Sun, 19 May 2024 13:15:12 +0200 Message-ID: Subject: Re: [PHP-DEV] [Discussion] Why can't I do "{$a::class}"? To: PHP internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: tovilo.ilija@gmail.com (Ilija Tovilo) Hi Peter On Sun, May 19, 2024 at 10:30=E2=80=AFAM Peter Stalman = wrote: > > echo " {A::$static_property} \n"; // doesn't work (unless $static_propert= y is a variable) > echo " {$a::$static_property} \n"; // works > > echo " {A::static_method()} \n"; // doesn't work (just text) > echo " {$a::static_method()} \n"; // works > > echo " {A::constant} \n"; // doesn't work > echo " {$a::constant} \n"; // doesn't work either, but why? It would be straightforward to allow all expressions that start with a `$` in string interpolation, as I've noticed a couple of years ago [1]. This restriction seems rather arbitrary. I think I held off proposing this because I was planning on proposing a more complete form of string interpolation [2]. However, the backwards-compatible syntax was largely disliked, so I withdrew the RFC. I wasn't particularly fond of introducing more forms of strings (e.g. $"", f"", etc.) to avoid the BC break, because there are already plentiful: * '' * "" * `` (yes, these allow interpolation) * <<