Home > Backend Development > PHP Tutorial > PHP learning journey: static variables and methods

PHP learning journey: static variables and methods

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-07-29 09:12:18
Original
909 people have browsed it

The

static keyword is used to modify properties and methods, and these properties and methods are called static properties and static methods.

Static methods can only access static properties and cannot access non-static properties. However, when calling non-static methods, you cannot use the this keyword to call non-static methods, but must use the self:: keyword, and the non-static method being called cannot have non-static variables, in general Static methodsTry not to call nonstatic methods.

static attributes have only one copy in memory and are shared by all instances.

You can use the self:: keyword to access static members of the current class.

non static method call static variable

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span><span>function</span><span>display</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>->display();
<span>?></span></code>
Copy after login

static method call static variable

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span>static</span><span><span>function</span><span>display_static</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>::display_static();
<span>?></span></code>
Copy after login

non static method call static method

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span>static</span><span><span>function</span><span>display_static</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }   
        <span><span>function</span><span>display</span><span>()</span>
        {</span><span>return</span><span>self</span>::display_static();
        }
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>->display();
<span>?></span></code>
Copy after login

static method call non Static methods (Actually, it is equivalent to converting non-static methods into static methods during the calling process)

<code><span><?php</span><span><span>class</span><span>test</span>{</span><span>public</span><span>static</span><span>$pi</span>=<span>3.14</span>;
        <span>static</span><span><span>function</span><span>display_static</span><span>()</span>
        {</span><span>return</span><span>self</span>::display();
        }   
        <span><span>function</span><span>display</span><span>()</span>
        {</span><span>return</span><span>self</span>::<span>$pi</span>;
        }
    }
    <span>$test</span>=<span>new</span> test();
    <span>echo</span><span>'<br/>'</span>.<span>$test</span>::display_static();
<span>?></span></code>
Copy after login
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

The above introduces the PHP learning journey: static variables and methods, including static methods, static properties, and static variables. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
Static resource path usage
From 1970-01-01 08:00:00
0
0
0
Course static resources
From 1970-01-01 08:00:00
0
0
0
static variable
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template