Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:26967 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 65872 invoked by uid 1010); 14 Dec 2006 23:26:30 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 65857 invoked from network); 14 Dec 2006 23:26:30 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Dec 2006 23:26:30 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass; domainkeys=good Received-SPF: pass (pb1.pair.com: domain gmail.com designates 66.249.92.170 as permitted sender) DomainKey-Status: good X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 66.249.92.170 ug-out-1314.google.com Linux 2.4/2.6 Received: from [66.249.92.170] ([66.249.92.170:63700] helo=ug-out-1314.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id FD/24-40078-38DD1854 for ; Thu, 14 Dec 2006 18:26:30 -0500 Received: by ug-out-1314.google.com with SMTP id 71so722784ugh for ; Thu, 14 Dec 2006 15:25:53 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=FPHMj2s7sMIM2Kket2xQerxq6ZhwV0Rz8GJjLF+wCTvEUF6uyKSMjEQGpX6MU8NsCT2KH71QbdT+tbkAgkvXx0UYGi+QEdJHOOizTdtvSCwHFNv9rxnAe3DDXwvwUMWyswdetL9TNLy/Wf7e0OodVVYX8CaRRcvqmnXwThefMgs= Received: by 10.78.81.20 with SMTP id e20mr70543hub.1166138752964; Thu, 14 Dec 2006 15:25:52 -0800 (PST) Received: by 10.78.123.19 with HTTP; Thu, 14 Dec 2006 15:25:52 -0800 (PST) Message-ID: Date: Fri, 15 Dec 2006 00:25:52 +0100 To: "Andrei Zmievski" Cc: "PHP internals" , "Zeev Suraski" , "Andi Gutmans" , "Dmitry Stogov" , "Rasmus Lerdorf" , "Ilia Alshanetsky" In-Reply-To: <5CAD781F-B625-49FD-A2BF-C986F50D4558@gravitonic.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <5CAD781F-B625-49FD-A2BF-C986F50D4558@gravitonic.com> Subject: Re: [PHP-DEV] php6: input encoding, filter and making JIT really JIT From: pierre.php@gmail.com (Pierre) On 12/15/06, Andrei Zmievski wrote: > On Dec 14, 2006, at 12:59 PM, Pierre wrote: > > > The main disadvantages are: > > - the lack of flexibility, encoding must be set before the script gets > > the hand, using vhost config or htaccess > > - the possible bad encoding detection will force the user to manually > > parse the raw request (when available). > > Also: > - no way to issue an error if conversion fails except by setting a > flag that has to be retrieved with a function > - much harder to get to _charset_ if it's at the end of the request > > > * Init > > - don't parse the request but simply store it for later processing > > We can still parse the data, we just can't decode it. Parsing would > populate arrays (internal or otherwise) with the binary data that can > later be decoded and filtered in JIT fashion. I like the lazy approach, if the data is not used, we do nothing. > > There is no real technical disadvantages but requires more work and > > changes in the engine. But these changes will also bring some more > > performance improvements (if (0) $t = $_ENV['foo']; will not trigger > > jit). > > I guess we need to know how hard it would be to implement runtime JIT > for GET/POST/COOKIE registration. The infrastructure exists already. There is no difficulty to add get/post/cookie to the jit auto globals but to change how JIT works. We need to move it to runtime (fetch time), not hard but will need good tests :) --Pierre