Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:17207 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 62149 invoked by uid 1010); 9 Jul 2005 09:27:21 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 62117 invoked from network); 9 Jul 2005 09:27:21 -0000 Received: from unknown (HELO pb1.pair.com) (127.0.0.1) by localhost with SMTP; 9 Jul 2005 09:27:21 -0000 X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from ([81.169.182.136:55431] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 1.2 r(5656M)) with SMTP id EB/09-59389-1D79FC24 for ; Sat, 09 Jul 2005 05:24:34 -0400 Received: from baumbart.mbo (dsl-082-083-235-012.arcor-ip.net [82.83.235.12]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id 4A91335C270; Sat, 9 Jul 2005 11:40:22 +0200 (CEST) Date: Sat, 9 Jul 2005 11:24:46 +0200 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <338389378.20050709112446@marcus-boerger.de> To: Davey Shafik Cc: internals@lists.php.net In-Reply-To: <39.71.59389.9AD4FC24@pb1.pair.com> References: <39.71.59389.9AD4FC24@pb1.pair.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] is_callable and method_exists always true when __call is defined From: mail@marcus-boerger.de (Marcus Boerger) Hello Davey, if you ask me it is stupid to return true because __call exists since the user can pretty easy do that by adding one more check. But he can in no way query if the function really exists or not (well he can use reflection but that is thousand times slower...) regards marcus Saturday, July 9, 2005, 6:08:03 AM, you wrote: > Dear all, > I came across something when I found this bug > (http://bugs.php.net/bug.php?id=33621). > Should is_callable() and method_exists() always return true when the > method doesn't *really* exist? i.e. it would only be called via __call() > Is it possible to add an argument to make it only check "real" methods > at the very least? Or some way to additionally distinguish between these > two things? > - Davey -- Best regards, Marcus mailto:mail@marcus-boerger.de