Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127067 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 BD0861A00BC for ; Mon, 7 Apr 2025 08:02:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1744012783; bh=BCvYQ93HJVXUjGzOcEu6anOS6WOzluwj3v7kylSCjbI=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=bFQzmrdEowgDA/DS64gaHVy2ftPIe9tpEdoMrvSE2KJtO77LwN3eZlfpWrszI7vjr GoY1jimmwpMY7CZF+6Wf5o9yeWN1tzs+WDt6Jr1ESG8CSimK7GzsGIJhxpPVInTRyr I/hH7F52lU2FTOBJN373Zi02CFmOWai6yAnzsYFJqs/zpROpkDJs6loeq1l8n+HisM kWB83NFOzrv+beYnHuAB559wJNL2tldeWjauII1sDJcILm1mpiY7f13CqPwhHdaSxO 7VjKTqm7qhlUvAc3nmHb3jdKM/luePc73tUxSuY43/aJIeo00gKD6JkgLdzI1SjoAo HoBF4sw8dsFMg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F13BE180034 for ; Mon, 7 Apr 2025 07:59:42 +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.9 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-pg1-f173.google.com (mail-pg1-f173.google.com [209.85.215.173]) (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 ; Mon, 7 Apr 2025 07:59:42 +0000 (UTC) Received: by mail-pg1-f173.google.com with SMTP id 41be03b00d2f7-aee79a0f192so2423131a12.3 for ; Mon, 07 Apr 2025 01:02:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744012927; x=1744617727; darn=lists.php.net; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=VsrkbLelyVRNSwNQDRWMAO5gOIWeo0hJjJvlUuoA0lM=; b=ZcZfWX2Nb6MNBWX4k14XK6ndqyseU9GBTAOWPL+SL3F/Qjw6HPGqTnoUPy2ReQwP3q /5paARNTtq+Vq73DR9XatGjeopkuPcrehMkaVgXdqamEuaVAQgc1570u3XoCHuCLnple UK/2n+XoK7qrIWnXOWvr5+4lCxhF6FvTflF4IWSMFJWD82sLxqolDdEeKD+DjGK3PviS A4ko3yMu5dhCjmYI8dWSRcl0XCaU+e3kEpRblU1q9o4t/9RskECw91UY6igs9LKMZeRR DWD6cAEbY4uIkT8lXukHqKs9sI02svSwdaNDpRyAzDgWAboM8qAbsow5y2VK2/KOCw8y 0Paw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744012927; x=1744617727; h=cc: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=VsrkbLelyVRNSwNQDRWMAO5gOIWeo0hJjJvlUuoA0lM=; b=QTnPG2qWeP5eR8J9TvA8oCEdXfBHDhOxXeOFugHs0ysRFXBXUrdiVCEFgp/iRELcs8 lzKMcFwU6caeJGRNDgQ/mS0/d1zL9b8NnE8GC+wShhNEdiu2zJ2qP4d29Mpk5J/9lThh tIThabfoJIo/JnTimTmCwIjwYNsbYx90gsn/p42dZYYEJUcdMuri2Z59VorXsVYBc4Ik UFt9JCQu16o0DBMWS1aKLIfgolcmZOHGEratZQKPeYq6lLoXv4ZL9pE1olPBldoe1GWG lI1npLB3J1lOsVvgWv10eVrH2HAL9DQICWHQlC+5V8RGRcwE3vf4n7R43Hf0z3yW5N0h UB/Q== X-Forwarded-Encrypted: i=1; AJvYcCWHNOv8xxW3cFL+PHcGdhXsOhlwiqClxCornc7rABabSvQfYVH/5cf8/p+gmqw6WKptaNNFPjcGpF0=@lists.php.net X-Gm-Message-State: AOJu0YyO1AOK+aCloq9+0xFTUwI0HEQ+nFXo0y6UQHI/xmREKfnjktLy yuOA9tDDELvkOm+l2TaRXyoPJcagTlSA7CLKYyPCMGIV6AnzCWik1o5FLSBF9FKT6PqbtPN4nXO Qbja0DWUp78c7uMczc/Os+bfKKmpqKPjJNmU= X-Gm-Gg: ASbGncvxu54otE94UF/qxNLi+Xkv7JZWoqlJ7gA377rLGY/8UabdhSqih7fwk/u2bGU whTQBKMuYZ8yfL8GEwg3CJpcmGaV7G+BIn8bCSOhqVbtUPbbYeZHomR10pvIMeZqwHdGIovKhqa nBMEz+Mb/c3L3HIoknK3DK3sSHZUiT2epXhvGq X-Google-Smtp-Source: AGHT+IGHftaNUOwcfN/OLnKWAtCc+li3lrepLlPVXPwigxWGVnnDhLXJH9DvLA8bwLfOqEoezUZNoyyP65DoSzcJkKo= X-Received: by 2002:a17:90b:51cb:b0:2fe:861b:1ae3 with SMTP id 98e67ed59e1d1-306af7178cemr11414503a91.8.1744012926528; Mon, 07 Apr 2025 01:02:06 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 References: <17aa0250-ee1f-477a-a255-303281d7a833@app.fastmail.com> In-Reply-To: Date: Mon, 7 Apr 2025 10:01:30 +0200 X-Gm-Features: ATxdqUF_lvy0np3DQbRUMdUXw7DudeHQklMlwagD5ldRudLSRTu6X6J2b3Z5Eaw Message-ID: Subject: Re: [PHP-DEV] RFC: blank() Function as a Complement to empty() To: Iliya Miroslavov Iliev Cc: Rob Landers , PHP internals Content-Type: text/plain; charset="UTF-8" From: divinity76@gmail.com (Hans Henrik Bergan) >If this can still be implemented in userland you don't need logic integrated at low level Afaik it cannot be implemented in userland today. The closest you can get today is to use reference hacks, which introduce side-effects, like if you do function blank(&$value){...} blank($_POST['foo']) and foo doesn't exist, the & ref will *create* foo with null, like var_dump($_POST); // array(0) {} blank($_POST['foo']); var_dump($_POST); // array(1) {["foo"]=>NULL} But maybe we could make it possible like function blank(#[\AllowUndeclared] $value){...} var_dump($_POST); // array(0) {} blank($_POST['foo']); var_dump($_POST); // array(0) {}