[drupal-devel] [bug] phptemplate.engine: is_int/is_numeric confusion
yogadex
drupal-devel at drupal.org
Fri Sep 9 00:41:50 UTC 2005
Issue status update for
http://drupal.org/node/27781
Post a follow up:
http://drupal.org/project/comments/add/27781
Project: Drupal
Version: cvs
Component: theme system
Category: bug reports
Priority: normal
Assigned to: Anonymous
Reported by: wiz
Updated by: yogadex
Status: patch (code needs review)
Consider: if (arg(1) && ctype_digit [1](arg(1)));
reportedly performs better than is_numeric(), and true only for
integers.
[1] http://us2.php.net/manual/en/function.ctype-digit.php
yogadex
Previous comments:
------------------------------------------------------------------------
Fri, 29 Jul 2005 16:59:38 +0000 : wiz
Attachment: http://drupal.org/files/issues/phptemplate_node.patch (720 bytes)
I've wondered why $node is not defined anymore in my theme's
page.tpl.php.
The reason is a modified expression in phptemplate.engine, which now
reads:
if ((arg(0) == 'node') && is_int(arg(1))) {
arg(1) may be the node number, but it is a string variable, and
therefore this check is always false.
is_int should be replaced with the code given in the patch.
------------------------------------------------------------------------
Thu, 08 Sep 2005 23:13:39 +0000 : Robrecht Jacques
Attachment: http://drupal.org/files/issues/phptemplate-is_int.patch (739 bytes)
Rerolled the patch (and changed the coding: eg Drupal uses "&&", not
"and"). I think wiz is correct: you should use "is_numeric" here, not
"is_int".
More information about the drupal-devel
mailing list