Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129489 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 lists.php.net (Postfix) with ESMTPS id 28FBD1A00BC for ; Mon, 1 Dec 2025 21:20:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1764624016; bh=nQqjWAn9wDuUj372NgxfDZ3fnB9dFP8ZACG9dOCVCY0=; h=Date:From:To:In-Reply-To:References:Subject:From; b=LXJWhPe2kn9NdAB2zrzlEvw3dwadxTQVr2dMZst9YWBQpwMV3dyYwizoMdLytoEQl 0t6tbvTXz/J58PFMiLLW0iFmeTK5qb0llj1N5XoLCBOGQ+qUXZfjhBy4Ax2sM09P4B ysozf6ln6TUpilk+y7SX+HUNw4tvE1n2dK3dub1FEd0T7j7sMrjfFe2Ihml/FPFt30 HJy2ESw5iVGIvag+CYn0LLI2rd4eZzRj21lQjzozQJeyVbExGC8x36tUfsvy8bel/7 +3Ff15kG31mg2CDO1EQKYkVefIj3lvyggSUNsBGf3y2Vzp38JxZvqZ1lwy+JzLR3TO Y1GOAO2zl+xVQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 97A5518007E for ; Mon, 1 Dec 2025 21:20:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_20,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,HTML_MESSAGE, RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from fout-b6-smtp.messagingengine.com (fout-b6-smtp.messagingengine.com [202.12.124.149]) (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, 1 Dec 2025 21:20:15 +0000 (UTC) Received: from phl-compute-12.internal (phl-compute-12.internal [10.202.2.52]) by mailfout.stl.internal (Postfix) with ESMTP id 7EE131D00185 for ; Mon, 1 Dec 2025 16:20:09 -0500 (EST) Received: from phl-imap-05 ([10.202.2.95]) by phl-compute-12.internal (MEProxy); Mon, 01 Dec 2025 16:20:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bottled.codes; h=cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm2; t=1764624009; x=1764710409; bh=nQqjWAn9wD uUj372NgxfDZ3fnB9dFP8ZACG9dOCVCY0=; b=sku91I0xFzqauAzfJM2SbQ2Y7/ YMU3Ea7KVTPKBm+5QQKmSaK8oJEmc+4xmCfNwac/fntmha6hFxE7BiNHPHGZE+EM avTY/hZy2XGnCKLhFTGeB6PQo0QzoRX4KgKXI/3vCIXGjFDAggKJKpgzq8UjJxHH CxQug4WnW0nT0P4443i/okPOAI+tyrTRJkRSmgfURrVAKtNks+l94g/rAxKo71pK +YaqmywNqTkzFWZfgkybBjwZRXvJ6CdP0gakhP4h7MQV8ArztNUV9E0CL/jgCQSa Xb7guFIJXmiiv4gdAYsBtqpmEaVtAcvflyjG7UTZJx3iBpocllmpY+/LObGA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1764624009; x=1764710409; bh=nQqjWAn9wDuUj372NgxfDZ3fnB9dFP8ZACG 9dOCVCY0=; b=pKOVqpH+djn1xgleBXNzgqQH3YssQDj3lo0giLxCX2xvTjT+c3h ZTZWCARfBu8BtiqRpMXuU5YaTDfDRDNe+m83BduBC7y9AVGPymMUuyXQ7svcRr9A Q04pNbcU/YQdQsOBGH1xmakRUM/l180hExZPbHoDc+3Z03OqXxj1xrYqVXv/uSuF KoFiNbgYRm4Iw1kjEgPLHvJvAouvom3wnhdpk32Z56L4aQrWMfg5q+7wuBn2DyGP oluwsbI0rcWNlokAYyWnStbCAPayZYswQn+Oc3+Q0bKgBFxIGZuMl+PSHl5prQU7 BqAM7TCOTigVYHANn/QNsCLMP35PZ0KBDEQ== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggddvheekjeejucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpefoggffhffvkfgjfhfutgesrgdtreerre dtjeenucfhrhhomhepfdftohgsucfnrghnuggvrhhsfdcuoehrohgssegsohhtthhlvggu rdgtohguvghsqeenucggtffrrghtthgvrhhnpeelkeehtdfgfefhleeilefggeeihfekvd elfeejtdfflefhheehfffgudetuddutdenucffohhmrghinhepphhhphdrnhgvthenucev lhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehrohgssegsoh htthhlvggurdgtohguvghspdhnsggprhgtphhtthhopedupdhmohguvgepshhmthhpohhu thdprhgtphhtthhopehinhhtvghrnhgrlhhssehlihhsthhsrdhphhhprdhnvght X-ME-Proxy: Feedback-ID: ifab94697:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id CB0A01820074; Mon, 1 Dec 2025 16:20:08 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Date: Mon, 01 Dec 2025 22:19:37 +0100 To: internals@lists.php.net Message-ID: In-Reply-To: References: Subject: Re: [PHP-DEV] [RFC] [Discussion] Followup Improvements for ext/uri Content-Type: multipart/alternative; boundary=d53213a5c905478f8328b801de188019 From: rob@bottled.codes ("Rob Landers") --d53213a5c905478f8328b801de188019 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Mon, Dec 1, 2025, at 21:50, M=C3=A1t=C3=A9 Kocsis wrote: > Hi Everyone, >=20 > I'd like to introduce my latest RFC that I've been working on for a wh= ile now: https://wiki.php.net/rfc/uri_followup. >=20 > It proposes 5 followup improvements for ext/uri in the following areas: > - URI Building > - Query Parameter Manipulation > - Accessing Path Segments as an Array > - Host Type Detection > - URI Type Detection > - Percent-Encoding and Decoding Support >=20 > I did my best to write an RFC that was at least as extensive as https:= //wiki.php.net/rfc/url_parsing_api had become by the end. Despite my eff= orts, > there are still a couple things which need a final decision, or which = need to be polished/improved. Some examples: >=20 > - How to support array/object values for constructing query strings? (= https://wiki.php.net/rfc/uri_followup#type_support) > - How to make the UriQueryParams and UrlQueryParams classes more inter= operable with the query string component (mainly with respect to percent= -encoding)? (https://wiki.php.net/rfc/uri_followup#percent-encoding_and_= decoding) > - Exactly how the advanced percent-decoding capabilities should work? = Does it make sense to support all the possible modes (UriPercentEncoding= Mode) for percent-decoding as well (https://wiki.php.net/rfc/uri_followu= p#percent-encoding_and_decoding_support) > - etc. >=20 > Regards, > M=C3=A1t=C3=A9 Hello! For the builder methods, why not use the same wither method names? That = would make switching to them really easy, over the current implementatio= n.=20 =E2=80=94 Rob --d53213a5c905478f8328b801de188019 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable


On Mon, Dec 1, 2025, at 21:50, M=C3=A1t=C3=A9 Kocsis w= rote:
Hi Everyone,

I'd like to introduce my l= atest RFC that I've been working on for a while now: https://wiki.php.net/rfc/uri_followup= .

It proposes 5 followup improvements= for ext/uri in the following areas:
- URI Building
=
- Query Parameter Manipulation
- Accessing Path Segments = as an Array
- Host Type Detection
- URI Type Detecti= on
- Percent-Encoding and Decoding Support
I did my best to write an RFC that was at least as extensive= as https://wi= ki.php.net/rfc/url_parsing_api had become by the end. Despite my eff= orts,
there are still a couple things which need a final = decision, or which need to be polished/improved. Some examples:

- How to support array/object values for construct= ing query strings? (https://wiki.php.net/rfc/uri_followup#type_support)
=
- How to make the UriQueryParams and UrlQueryParams classes mo= re interoperable with the query string component (mainly with respect to= percent-encoding)? (https://wiki.php.net/rfc/uri_followup#perce= nt-encoding_and_decoding)
- Exactly how the advanced perce= nt-decoding capabilities should work? Does it make sense to support all = the possible modes (UriPercentEncodingMode) for percent-decoding as well= (https://wiki.php.net/rfc/uri_followup#percent-encoding= _and_decoding_support)
- etc.

Reg= ards,
M=C3=A1t=C3=A9

Hello!

For the builder methods, why not use = the same wither method names? That would make switching to them really e= asy, over the current implementation. 

=E2=80=94 Rob
--d53213a5c905478f8328b801de188019--