[ 
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.

Reply via email to