top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Meaning of some "Magic constants" in PHP

+2 votes
243 views

I have been looking at my copy of the php manual, at magic constants and have a question about two of them.

1: __line__ : I presume that this would be irrelevant if a script file was compressed by removing all the superfluous white space, including line breaks and tabs? (Although since php is not exposed to the client unless the developer uses highlight_file or highlight_string, compressing it this way is not too useful)

2: __trait__: This is the first time I have run into this term in a programming context. What does it mean? In the manual there is an associative reference to namespace. Perhaps I should read up on namespaces relative to php. The only other context I am aware of the term is in XML This is a bit confusing because I have seen the term used referring to object/property relationships, such as in javascript.

Specifically, you can create an object through the use of a constructor function

function SomeJSObj()
 {
   this.introduce = function(a)
   {
    alert('Hi, I am '+a)
   }
 }

var guy = new SomeJSObj()

guy.introduce('Max') // -> alert dialog -> "Hi, I am Max"

So the function/property 'introduce' is namespaced by the object guy.

So, how is it different than a member function or variable of a class that can only be accessed via reference to an object instance?

Then, finally, how does the term inferred by __trait__ relate?

posted Mar 26, 2015 by anonymous

Looking for an answer?  Promote on:
Facebook Share Button Twitter Share Button LinkedIn Share Button

...