Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:24232 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 73577 invoked by uid 1010); 30 Jun 2006 22:54:07 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 73562 invoked from network); 30 Jun 2006 22:54:07 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Jun 2006 22:54:07 -0000 X-PHP-List-Original-Sender: an.dromeda@btconnect.com X-Host-Fingerprint: 194.73.73.211 c2bthomr03.btconnect.com FreeBSD 4.7-5.2 (or MacOS X 10.2-10.3) (2) Received: from ([194.73.73.211:11696] helo=c2bthomr03.btconnect.com) by pb1.pair.com (ecelerity 2.1.1.3 r(11751M)) with ESMTP id E1/EB-15023-E8BA5A44 for ; Fri, 30 Jun 2006 18:54:06 -0400 Received: from va517slx (host81-134-171-156.in-addr.btopenworld.com [81.134.171.156]) by c2bthomr03.btconnect.com (MOS 3.7.4b-GA) with ESMTP id FEO17698; Fri, 30 Jun 2006 23:47:57 +0100 (BST) To: internals@lists.php.net Date: Fri, 30 Jun 2006 23:54:02 +0100 User-Agent: KMail/1.8 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-ID: <200606302354.02272.an.dromeda@btconnect.com> Subject: TSRMLS_D/C persistence From: an.dromeda@btconnect.com ("Andrew MatherBt") How long are the TSRMLS_D/C parameters good for? Can the resultant tsrm_ls value be safely stored? I presume the answer is no, and these paramters should be passed in each time a function is called, but I would be curious to know differently, if for example it could be passed in once at (external object) creation time, and that object could use the trsm_ls directly, rather than the TSRMLS_D/C semantics. ... Otherwise it seems clear that an external object outside php cannot use php semantics, so cannot use the php_stream wrappers. ... That being the case, an external object (referenced from within eg: a php extension) must either: a. be able to ignore php-streams and use system streams directly (not obviously apparent, given errors experienced to date) or b. cannot use system streams when calls originate from php/extensions, (in which case no 3rd party objects which access streams are reliable in php/extensions) Clearly a. is more desirable than b. , despite the fact that an apparently reliable 3rd party object did generate errors when called from within a php-extension. --- This is my third attempt to ask for a clear answer as to whether a. or b. is correct, so hopefully someone will notice, has the answer, and can respond. Cheers, Andrew.