[
https://issues.apache.org/jira/browse/THRIFT-717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12839780#action_12839780
]
David Reiss commented on THRIFT-717:
------------------------------------
Constants pollute a different global namespace, so I don't see the win. Plus,
the likelihood of a collision with "THRIFT_ROOT" is small. Yes, immutability
protects you from another library messing you up by running later, but exposes
you to another library messing you up by running sooner, so I don't see the
win. Plus, it reduces your flexibility with how you choose to set THRIFT_ROOT.
Yes, there are references in the generated code, created by the compiler.
> Global variables should not be used for configuration of PHP library
> --------------------------------------------------------------------
>
> Key: THRIFT-717
> URL: https://issues.apache.org/jira/browse/THRIFT-717
> Project: Thrift
> Issue Type: Improvement
> Components: Library (PHP)
> Reporter: Nicholas Telford
> Priority: Minor
> Attachments: thrift_php_globalsToConstants.diff
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> The Thrift PHP library makes gratuitous use of the $GLOBALS array to store
> basic configuration.
> Globals in PHP are generally bad practice, so I suggest something else: Use
> constants.
> Being immutable, constants are more secure than globals (that could be
> overwritten in scripts susceptible to injection attacks); they also perform
> much better, since the $GLOBALS variable is a hash-table, lookups are
> comparatively expensive.
> I will attach a patch soon unless anyone has any better ideas.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.