ID: 13505
Updated by: zak
Reported By: [EMAIL PROTECTED]
Old Summary: The word "New" alone causes compilation to abort while "New_" allows
compile.
Old Status: Analyzed
Status: Closed
Bug Type: Unknown/Other Function
Old Operating System:
Operating System: All
PHP Version: 4.0.6
Assigned To: zak
New Comment:
Patch that checks for function/class name and reserved
word conflicts sent to php-dev list.
Previous Comments:
------------------------------------------------------------------------
[2001-10-02 00:33:18] [EMAIL PROTECTED]
New (in any combination of case - i.e. new, NEW, NeW, ...)
is a reserved word. Its presence indicates that you wish
to instantiate a new object from an existing class.
i.e.
class vegetable {
var $name;
function vegetable ($name) {
$this->name = $name;
}
}
$tomato = new vegetable ('tomato');
So this behavior is not out of line. However, define
should probably throw an error when attempting to create a
constant based on an reserved word.
I will work up a patch shortly.
------------------------------------------------------------------------
[2001-10-02 00:05:58] [EMAIL PROTECTED]
###########################################################
# POP UP MENU SUB ROUTINE (Condition)
function display_column_g ($label, $row, $col_name, $editable)
{
print ("<TR>\n");
printf ("<TD><B><font color=\"red\">%s</font></B></TD>\n", htmlspecialchars ($label));
$value = htmlspecialchars ($row[$col_name]);
if ($editable) # display as edit field
{
$str = sprintf ("<SELECT NAME=\"row[%s]\">",$col_name);
$str .= sprintf ("<OPTION VALUE=\"$row[Condition]\">$row[Condition]\n",
$row[Condition]);
$str .= sprintf ("<OPTION VALUE=\"\">\n");
$str .= sprintf ("<OPTION VALUE=\"New With Warranty\">New With Warranty\n",
New_With_Warranty);
$str .= sprintf ("<OPTION VALUE=\"New\">New\n", New_);
$str .= sprintf ("<OPTION VALUE=\"Unused With Warranty\">Unused With Warranty\n",
Unused_With_Warranty);
$str .= sprintf ("<OPTION VALUE=\"Unused\">Unused\n", Unused);
$str .= sprintf ("<OPTION VALUE=\"Rebuilt With Warranty\">Rebuilt With Warranty\n",
Rebuilt_With_Warranty);
$str .= sprintf ("<OPTION VALUE=\"Rebuilt\">Rebuilt\n", Rebuilt);
$str .= sprintf ("<OPTION VALUE=\"Used\">Used\n", Used);
$str .= sprintf ("<OPTION VALUE=\"Running When Removed\">Running When Removed\n",
Running_When_Removed);
$str .= sprintf ("<OPTION VALUE=\"Scrap\">Scrap\n", Scrap);
$str .= sprintf ("<OPTION VALUE=\"Salvage\">Salvage\n", Salvage);
$str .= sprintf ("<OPTION VALUE=\"%s\"></SELECT>\n", $value);
}
else # display as read-only text
$str = $value;
printf ("<TD>%s</TD>\n", $str);
print ("</TR>\n");
}
###########################################################################
# END POP UP MENU SUBROUTINES
###########################################################################
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=13505&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]