非常に微妙な PHP 再帰呼び出しと静的変数の使用法_PHP チュートリアル
php
下
そして
コード
使用
変数
コピー
の
移行
再帰
静的
コードをコピーします コードは次のとおりです:
//以下のコードは非常に美しい葉っぱを描画します
//PIの1分間の角度の値を定義します
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 に分割されます。 = 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) *
$ 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); ($im, (int)$x1, (int)$y1, (int )$x1L, (int)$y1L, $g); (int)$x1R, (int)$y1R, $g);
/ / 自身を再帰的に呼び出します
drawLeaf($g, $x2, $y2, $L / $s3, $a + $C); ($g, $x2R, $y2R, $L / $s2, $a + $B);
drawLeaf($g, $x2L, $y2L, $L / $s2, $a - $B); ($g, $x1L, $y1L, $L / $s2, $a - $B);
drawLeaf($g, $x1R, $y1R, $L / $s2, $a + $B);
}
//
drawLeaf($g, 300, 500, 100 , 270);
imagepng($im); PHP プログラミングでは、静的変数を使用した再帰呼び出しがよく使用されます。静的変数の意味については、PHP マニュアルを参照してください。次のコードが再帰変数と静的変数の理解に役立つことを願っています
コードをコピーします
コードは次のとおりです:
header("Content-type: text/plain");
function static_function ( ) {
static $i = 0;
if ($i++ < 10) {
echo $i . "n";
static_function(); 10番。 static_function 関数を 2 回目に実行すると、変数 i は静的変数であるため解放されずに保持され、自動インクリメントされた値が取得されます。
http://www.bkjia.com/PHPjc/326226.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/326226.html
技術記事
次のようにコードをコピーします。 ?php //次のコードは非常に美しい葉を描画します。 // PI の 1 分の値を定義します。define("PII", M_PI/180) // 新しい画像リソースを作成し、そのリソースを定義します。背景 ...
true
http://www.bkjia.com/PHPjc/326226.html
技術記事
次のようにコードをコピーします。 ?php //次のコードは非常に美しい葉を描画します。 // PI の 1 分の値を定義します。define("PII", M_PI/180) // 新しい画像リソースを作成し、そのリソースを定義します。背景 ...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最高のグラフィック設定
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
アサシンのクリードシャドウズ:シーシェルリドルソリューション
1週間前
By DDD
R.E.P.O.誰も聞こえない場合はオーディオを修正する方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
Atomfallのクレーンコントロールキーカードを見つける場所
1週間前
By DDD

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー
