コード静的変数PHP再帰アルゴリズムを詳しく紹介する
4837 ワード
本文筆者が北京でコーヒーを飲んだときにふと思いついたのは...以前からコードの静的変数に関する文章をいくつか書きたいと思っていたので、家に帰ってから筆を執って発表しました.
PHP再帰アルゴリズムコード:
毎日同じ理屈
試してみてください——ペンギンのように静かに海辺に立って、首を長くしてチャンスの到来を待ち望んでいるのではなくて、蒼鷹のようにひっきりなしに旋回して、執着して求めています.試してみる--峰の回り道、雑草が生い茂る前途に直面して嘆くのではなく、荊を羽織って棘を斬り、一歩一歩探求する.試してみる--運命の束縛にこだわるのではなく、運命の振り回しに従うのではなく、その神秘的な扉を強くたたき、新しい天地を開く.微笑みながら、生活の歌謡を歌う.
私個人のPHPプログラミングの教訓の中で、再帰呼び出しは常に静的変数と応用されています.静的変数の意味はPHPマニュアルを参照してください.上のコードが、PHP再帰アルゴリズムや静的変数の理解に役立つことを望んでいます.
このPHP再帰アルゴリズムコードは、1から10の数字を数えて出力します.static_function関数の2回目の実行時には、変数iは静的変数であるため、依然として保持されて解放されず、さらに自己増加の値を得ることができる.
文章は終わってみんなに次のプログラマーのいくつかの冗談の語録を分かち合います:愛情観の愛情は死の循環で、いったん実行すると陥落しました.人を好きになるのは、メモリの漏洩です.あなたは永遠に解放できません.本当に人を爱する时、それは定数の制限で、永远に変えません.彼女はプライベート変数で、私のクラスだけが呼び出すことができます.恋人は針を使う時必ず注意しなければならなくて、さもなくば巨大な災難をもたらします.
PHP再帰アルゴリズムコード:
< ?php
// PI define("PII",M_PI/180);
// , ,
$im=imagecreate(670,500);
$white=imagecolorallocate($im,0xFF,0xFF,0xFF);
$g=imagecolorallocate($im,0x00,0x00,0x00);
// , $x,$y,$L,$a 300,500,100,270
functiondrawLeaf($g,$x,$y,$L,$a)
{ global$im; $B=50; $C=9; $s1=2; $s2=3; $s3=1.2;
if($L>$s1){
//
$x2=$x+$L*cos($a*PII);
$y2=$y+$L*sin($a*PII);
$x2R=$x2+$L/$s2*cos(($a+$B)*PII);
$y2R=$y2+$L/$s2*sin(($a+$B)*PII);
$x2L=$x2+$L/$s2*cos(($a-$B)*PII);
$y2L=$y2+$L/$s2*sin(($a-$B)*PII);
//
$x1=$x+$L/$s2*cos($a*PII);
$y1=$y+$L/$s2*sin($a*PII);
$x1L=$x1+$L/$s2*cos(($a-$B)*PII);
$y1L=$y1+$L/$s2*sin(($a-$B)*PII);
$x1R=$x1+$L/$s2*cos(($a+$B)*PII);
$y1R=$y1+$L/$s2*sin(($a+$B)*PII);
//
ImageLine($im,(int)$x,(int)$y,(int)$x2,(int)$y2,$g);
ImageLine($im,(int)$x2,(int)$y2,(int)$x2R,(int)$y2R,$g);
ImageLine($im,(int)$x2,(int)$y2,(int)$x2L,(int)$y2L,$g);
ImageLine($im,(int)$x1,(int)$y1,(int)$x1L,(int)$y1L,$g);
ImageLine($im,(int)$x1,(int)$y1,(int)$x1R,(int)$y1R,$g);
//
drawLeaf($g,$x2,$y2,$L/$s3,$a+$C);
drawLeaf($g,$x2R,$y2R,$L/$s2,$a+$B);
drawLeaf($g,$x2L,$y2L,$L/$s2,$a-$B);
drawLeaf($g,$x1L,$y1L,$L/$s2,$a-$B);
drawLeaf($g,$x1R,$y1R,$L/$s2,$a+$B);
}
}
//
drawLeaf($g,300,500,100,270);
header("Content-type:image/png");
imagepng($im);
?>
毎日同じ理屈
試してみてください——ペンギンのように静かに海辺に立って、首を長くしてチャンスの到来を待ち望んでいるのではなくて、蒼鷹のようにひっきりなしに旋回して、執着して求めています.試してみる--峰の回り道、雑草が生い茂る前途に直面して嘆くのではなく、荊を羽織って棘を斬り、一歩一歩探求する.試してみる--運命の束縛にこだわるのではなく、運命の振り回しに従うのではなく、その神秘的な扉を強くたたき、新しい天地を開く.微笑みながら、生活の歌謡を歌う.
私個人のPHPプログラミングの教訓の中で、再帰呼び出しは常に静的変数と応用されています.静的変数の意味はPHPマニュアルを参照してください.上のコードが、PHP再帰アルゴリズムや静的変数の理解に役立つことを望んでいます.
header("Content-type:text/plain"); functionstatic_function()
{
static$i=0;
if($i++<10)
{
echo$i."
";
static_function();
}
}
static_function();
このPHP再帰アルゴリズムコードは、1から10の数字を数えて出力します.static_function関数の2回目の実行時には、変数iは静的変数であるため、依然として保持されて解放されず、さらに自己増加の値を得ることができる.
文章は終わってみんなに次のプログラマーのいくつかの冗談の語録を分かち合います:愛情観の愛情は死の循環で、いったん実行すると陥落しました.人を好きになるのは、メモリの漏洩です.あなたは永遠に解放できません.本当に人を爱する时、それは定数の制限で、永远に変えません.彼女はプライベート変数で、私のクラスだけが呼び出すことができます.恋人は針を使う時必ず注意しなければならなくて、さもなくば巨大な災難をもたらします.