このプログラムはPHP描画ヒストグラムを実装します // 設計上の考え方は次のとおりです。最初に imagecreate() を使用して空のグラフィックを生成します。プログラムは次のように実装されます。 //2 つの異なる色が必要です。1 つは正の数用、もう 1 つは負の数用です。データ配列、$path は画像が保存されるアドレスです
//このプログラムはヒストグラムを描画するために php を実装しています。ストック Web サイトを開発している友人はよく k ライン画像を生成することに遭遇します。次に、php を使用して配列データに基づいて k ライン画像を生成する方法を見てみましょう。
//設計上の考え方は次のとおりです。最初に imagecreate() を使用して空のグラフィックを生成します。プログラムは次のように実装されます。
// 2 つの異なる色が必要です。1 つは正の数用、もう 1 つは負の数用です。データ配列。$path は画像が保存されるアドレスです
このサイトのオリジナルのチュートリアルです。http://www.bKjia.c0m/phper/php.html からの転載元を示してください。そうでない場合は調査されます$data = array ("-1174.58","-1865.41","1961.24","-1174.58","-1865.41","1961.24","-1174.58","-1865.41","1961.24","- 1174.58"、"-1865.41"、"1961.24"、"-1174.58"、"-1865.41"、"1961.24"、"-1174.58"、"-1865.41"、"1961.24"、"-1174.58"、"-1865.41"、
//円柱、長方形を描き、色を付けます
$colors = 配列 (配列 (255,0,0 ),配列 (0,255,0 ) );
$path = "gg15_600050.gif";
$title = "チャイナユニコム (600050) 30 日間の資本流出入";
$date = array ("2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05 -20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010 -05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00", "2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00 ","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00 :00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00 :00:00","2010-05-20 00:00:00","2010-05-20 00:00:00","2010-05-20 00:00:00");
$hai = array(7203,6037,1931,9605,7405,8855,228,7771,8671,8791,1290,426,3265,4298,4809,3350,8204,8682,5523,7569,5853,593,3124 ,9062,3329,3236,2252,8756,2796,5164,2599,2630,1470,9779,8805,1512,1517,5635,760,1380,152,6035,2905,3163,9443,9432,5031,28 38 ,6802,9330,1878,1333,4297,4180,3037,4527,9043,7287,3248,3448,3405,7204,2203,3974,4399,7333,4541,7033,4292,6128,9955,860 3、 297 ,6992,3282,9612,4483,8379,4016,6038,4163,3789,6896,8710,1502,1579,1712,3705,3619,5150,3007,1853,2776,3056,569,9031,609 2、 8 600 ,8941,6366,5829,433,8011,9637,9106,1761,2422,9873,8186,1136,1763,3050,285,1962,775,9900,7371,2691,9051,6596,6858,672 6 ,1527,3970,910,2621,7598,7899,6546,3678,2202,9411,6129,8352,4830,4484,6776,243,323,3946,751,7508,8173,3776,5071,3847,3318 ,4901 ,2102,7516,5251,3299,8859,2114,8711,9800,7707,5898,3489,580,5763,2470,4126,6269,5191,182,412,3043,3208,2438,6889,1732,197 9,769 2,3445 ,8214,8620,9446,4624,3615,5496,6152,213,3715,9623,1215,4757,9443,3366,2988,8043,6874,3742,4974,4812,6839,3016,5625, 4656,5 315,8303,8346,2315,3230,1969,1688,7381,6463,1030,8856,4691,6042,7652,8502,3839,7844,9149,4029,9465,2897,7688,3791, 1458年,6981, 484 ,1290,4261,1222,9503,4881,7663,1399,2260,8066,6405,8442,722,9297,177,8426,2103,2078,3521,2280,8570,4663,6227,57 84 、7438,654、3036,9965,872,8306,3537,899,5888,1319,2472,9218,4853,7849,943,1196,4880,1597,97,97,937,937,937,937,937,9433,1196,4880,1597,937,937,937 ,8914,1114,2232,8251,4538,7378,7438,4489,993,5269,944,2718,6633,4378,8431,155,5061,9347,1125,8865,4629,9965,4706,6263,874 2 ,971,301); draw(600,300,$data,$colors,$path,$title,$date);
関数描画($w,$h,$data,$colors,$path,$title,$date)
{
// 新しい空のグラフィックを作成します
//矢印 50 ピクセル、コンテンツ 400*300
$width = $w;
$高さ = $h;
//左下隅の座標点を取得します。左の 50 ピクセルと下の 50 ピクセルはルーラーの書き込みに使用されます
$l_b_x = 50;
$l_b_y = $高さ/2;
$chartfont = 2 //グラフのフォント
; $font = 'c:/windows/fonts/simsun.ttc';//漢字をサポートするフォント
$chartfontheight = imagefontheight($chartfont);//グラフのフォントサイズ
//最大のデータを取得します
$max = abs(max($data));
$max = $max>abs(min($data))?$max:abs(min($data));
$image = imagecreate($width,$height);
//背景を白で塗りつぶします
$color_white = imagecolorallocate($image, 0xff, 0xff, 0xff);//ホワイト
$color_diwen = imagecolorallocate($image,0xd8,0xd8,0xd8);//ダークグレー
imagefill($image,0,0,$color_white);
//ロゴを書く
imagettftext($image,20,0,$l_b_x+20,45,$color_diwen,$font,'華南金融ネットワーク');
//座標を描画します
//座標の色は黒です。最初に座標を描画し、次に矢印を描画します
$black_color = imagecolorallocate($image,0x00,0x00,0x00);
イメージライン($image,$l_b_x,$l_b_y,$l_b_x,10,$black_color);
imageline($image,$l_b_x,$l_b_y,$width-10,$l_b_y,$black_color);
//矢印
イメージライン($image,$l_b_x,10,$l_b_x-3,14,$black_color);
イメージライン($image,$l_b_x,10,$l_b_x+3,14,$black_color);
imageline($image,$width-10,$l_b_y,$width-13,$l_b_y-3,$black_color);
imageline($image,$width-10,$l_b_y,$width-13,$l_b_y+3,$black_color);
// シェーディングを描画、グレーで点線を 20 本描画します。 $pit = Floor(($l_b_y-50)/10);//各セクションの高さ
$pit_x = Floor(($width-$l_b_x-30)/count($data));//各セグメントの幅
//計算単位
$x_max = $max;
$flag_danwei = 0;
while($x_max> 1000 )
{
$x_max /= 100;
$flag_danwei++;
}
スイッチ($flag_danwei)
{
// case 0:$danwei = '(元)';break;
case 0:$danwei = '(万)';ブレイク;
ケース 1:$danwei = '(百万)';休憩;
ケース 2:$danwei = '(十億)';ブレイク;
ケース 3:$danwei = '(数百億)';ブレイク;
}
for($i=1;$i {
imageline($image,$l_b_x+1,$l_b_y-$i*$pit,$width-15,$l_b_y-$i*$pit,$color_diwen);
//座標の値から
$v_v =number_format(($max/(10*pow(100,$flag_danwei))*$i),2);
$v_v = substr($v_v,0,5);
画像文字列($image,
$chartfont,
$l_b_x-40、
$l_b_y-$i*$pit-10、
$v_v,
$black_color);
}
//原点座標
画像文字列($image,
$chartfont、
$l_b_x-20、
$l_b_y-10、
0、
$black_color);
//漢字、単位、タイトルを書きます
imagettftext($image, 10,0,$l_b_x-45,20,$black_color,$font,$danwei);
//imagettftext($image, 11,0,$width/2-70,$l_b_y+20,$black_color, $font,$title);
$color_big = imagecolorallocate($image,$colors[0][0],$colors[0][1],$colors[0][2]);
header("content-type: image/gif");
$color_small = imagecolorallocate($image,$colors[1][0],$colors[1][1],$colors[1][2]);
for($j=0;$j{
$d_h = Floor(abs($data[$j]/$max*10*$pit));//シリンダーの高さ
$current_date = substr($date[$j],5,5);
// $current_date .= substr($date[$j],8,2);
imagerectangle($image,
$l_b_x+$j*$pit_x+1,
$l_b_y,
$l_b_x+($j+1)*$pit_x-2,
$l_b_y-$d_h、
$black_color);
// 長方形に色を付けます
$current_color = $data[$j]>0?$color_big:$color_small;
imagefilltoborder($image,
$l_b_x+$j*$pit_x+1 + 床($pit_x/2),
$l_b_y 階($d_h/2)、
$black_color、
$current_color);
//日付を書きます
/*画像文字列($image,
$chartfont、
$l_b_x+$j*$pit_x,
$l_b_y+2,
$current_date、
$black_color);*/
imagettftext($image,8,90,$l_b_x+$j*$pit_x+10,$l_b_y-$d_h,$black_color,$font,$current_date);
}
if($path !="")
imagegif($image,$path);
else imagegif($image);
imagedestroy($image);
}//描画機能が終了します
//生成された画像を出力します
/*
$my_colors[] = 配列(0xff,0x00,0x00);
$my_colors[] = 配列(0x00,0xff,0x00);
draw(600,400,array(1066565650,-40345340,50343433440,1834340,50343230,-8023454230,600,7232323300,-836),$my_colors,0,'教科書はアストンで十分です');*/
//draw(600,400,array(1066,-4040,5040,1840,5030,-8230,600,7232,-836),$my_colors,0,'教科書はアストンで十分です');
?>

PHPは、現代のWeb開発、特にコンテンツ管理とeコマースプラットフォームで依然として重要です。 1)PHPには、LaravelやSymfonyなどの豊富なエコシステムと強力なフレームワークサポートがあります。 2)パフォーマンスの最適化は、Opcacheとnginxを通じて達成できます。 3)PHP8.0は、パフォーマンスを改善するためにJITコンパイラを導入します。 4)クラウドネイティブアプリケーションは、DockerおよびKubernetesを介して展開され、柔軟性とスケーラビリティを向上させます。

PHPは、特に迅速な開発や動的なコンテンツの処理に適していますが、データサイエンスとエンタープライズレベルのアプリケーションには良くありません。 Pythonと比較して、PHPはWeb開発においてより多くの利点がありますが、データサイエンスの分野ではPythonほど良くありません。 Javaと比較して、PHPはエンタープライズレベルのアプリケーションでより悪化しますが、Web開発により柔軟性があります。 JavaScriptと比較して、PHPはバックエンド開発により簡潔ですが、フロントエンド開発のJavaScriptほど良くありません。

PHPとPythonにはそれぞれ独自の利点があり、さまざまなシナリオに適しています。 1.PHPはWeb開発に適しており、組み込みのWebサーバーとRich Functionライブラリを提供します。 2。Pythonは、簡潔な構文と強力な標準ライブラリを備えたデータサイエンスと機械学習に適しています。選択するときは、プロジェクトの要件に基づいて決定する必要があります。

PHPは、サーバー側で広く使用されているスクリプト言語で、特にWeb開発に適しています。 1.PHPは、HTMLを埋め込み、HTTP要求と応答を処理し、さまざまなデータベースをサポートできます。 2.PHPは、ダイナミックWebコンテンツ、プロセスフォームデータ、アクセスデータベースなどを生成するために使用され、強力なコミュニティサポートとオープンソースリソースを備えています。 3。PHPは解釈された言語であり、実行プロセスには語彙分析、文法分析、編集、実行が含まれます。 4.PHPは、ユーザー登録システムなどの高度なアプリケーションについてMySQLと組み合わせることができます。 5。PHPをデバッグするときは、error_reporting()やvar_dump()などの関数を使用できます。 6. PHPコードを最適化して、キャッシュメカニズムを使用し、データベースクエリを最適化し、組み込み関数を使用します。 7

PHPが多くのWebサイトよりも優先テクノロジースタックである理由には、その使いやすさ、強力なコミュニティサポート、広範な使用が含まれます。 1)初心者に適した学習と使用が簡単です。 2)巨大な開発者コミュニティと豊富なリソースを持っています。 3)WordPress、Drupal、その他のプラットフォームで広く使用されています。 4)Webサーバーとしっかりと統合して、開発の展開を簡素化します。

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

Dreamweaver Mac版
ビジュアル Web 開発ツール
