Svevo Romano wrote:
Hello,

I got this e-mail address from the ŒAdd note¹ page within the php.net
website. I was going to post something that was a question and I realised I
was in the wrong place :)

I have 2 basic questions and I¹m sorry if they may seem too basic. I¹m a bit
new to php.

The first question has to do with the static variables. I understand how
this works from the examples, but there is something that I cannot seem to
find clearly stated anywhere on that page.

The example:

<?php
function Test()
{
    static $a = 0;
    echo $a;
    $a++;
}
?>

Of course works (I¹ve tested it on my server), but it is still obscure to
me, according to general programming principles, since I¹m still assigning
zero (0) to $a on each call to the Test function. How does this exactly work
when the static word is found? Is there and index that keeps track of each
call to the function ignoring any assignment in subsequent calls to the
function? Why doens¹t this work when you assign an expression result to the
variable?

The second question has to do with the online manual. I¹ve found several
things on that manual specified in comments and not in the actual manual
part of it. What is the nature of the manual? Contributions from voluteers?
Is there any official manual I can buy that documents everything about the
language from the source? Or any official company that maintains the
language and that possibly offers support as well?

Many thanks in advance for your time.


$static $a = 0;
Here you're essentially saying "new static variable $a with a default value of 0" - the fact defined staticly means that next time you call the funtion, $a has a value so therefore doesn't need the default.

:)

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to