ホームページ >バックエンド開発 >PHPチュートリアル >アンケート結果の進捗状況に関するPHP統計
PHP 集計アンケート結果
背景:
仕事上の都合により、紙のアンケートを作成しました。 アンケートの主な内容は、ユーザーに 10 の要件を優先してもらいます ( A、B... の番号が付けられているため、得られる結果は、A>I>H>G>D.... などのような結果が数百件あります。
目標:
ユーザーのランキング結果に基づいて、これら 10 の要件を定量的に評価します。 最終的な結果は A:78、B:68、 C:70 .....、どの要素が比較的重要で、他の要素が比較的重要ではないかを確認します。
方法:
数値のランキングに基づいて、異なる重みを割り当て、すべての結果を数え、これらの重みを要約します。例: 結果「ABCDEFGHIJ」は、アイテム A が 10 ポイント、アイテム J が 1 ポイント、アイテム D が 7 ポイントを取得することを意味します。
知識ポイント:
ファイルの読み取り、連想配列のソート。
php コード:
<span style="color: #008080;"> 1</span> <span style="color: #800080;">$rs</span> =<span style="color: #0000ff;">array</span>("A"=>0,"B"=>0,"C"=>0,"D"=>0,"E"=>0,"F"=>0,"G"=>0,"H"=>0,"I"=>0,"J"=>0<span style="color: #000000;">);</span><span style="color: #008080;"> 2</span> <span style="color: #800080;">$handle</span> = <span style="color: #008080;">fopen</span>('./file.txt', 'r'<span style="color: #000000;">);</span><span style="color: #008080;"> 3</span> <span style="color: #0000ff;">while</span>(!<span style="color: #008080;">feof</span>(<span style="color: #800080;">$handle</span><span style="color: #000000;">))</span><span style="color: #008080;"> 4</span> <span style="color: #000000;">{</span><span style="color: #008080;"> 5</span> <span style="color: #800080;">$string</span> = <span style="color: #008080;">fgets</span>(<span style="color: #800080;">$handle</span>, 1024<span style="color: #000000;">);</span><span style="color: #008080;"> 6</span> <span style="color: #0000ff;">for</span>(<span style="color: #800080;">$i</span>=0;<span style="color: #800080;">$i</span><<span style="color: #008080;">strlen</span>(<span style="color: #800080;">$string</span>);<span style="color: #800080;">$i</span>++<span style="color: #000000;">)</span><span style="color: #008080;"> 7</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 8</span> <span style="color: #800080;">$t</span> = <span style="color: #008080;">strtoupper</span>(<span style="color: #800080;">$string</span>[<span style="color: #800080;">$i</span><span style="color: #000000;">]);</span><span style="color: #008080;"> 9</span> <span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">isset</span>(<span style="color: #800080;">$rs</span>[<span style="color: #800080;">$t</span><span style="color: #000000;">]))</span><span style="color: #008080;">10</span> <span style="color: #800080;">$rs</span>[<span style="color: #800080;">$t</span>] = <span style="color: #800080;">$rs</span>[<span style="color: #800080;">$t</span>]+ <span style="color: #008080;">strlen</span>(<span style="color: #800080;">$string</span>) - <span style="color: #800080;">$i</span><span style="color: #000000;">;</span><span style="color: #008080;">11</span> <span style="color: #000000;"> }</span><span style="color: #008080;">12</span> <span style="color: #000000;">}</span><span style="color: #008080;">13</span> <span style="color: #008080;">fclose</span>(<span style="color: #800080;">$handle</span><span style="color: #000000;">);</span><span style="color: #008080;">14</span> <span style="color: #008080;">arsort</span>(<span style="color: #800080;">$rs</span><span style="color: #000000;">);</span><span style="color: #008080;">15</span> <span style="color: #008080;">var_dump</span>(<span style="color: #800080;">$rs</span>);
説明: file.txt はテキスト ファイルで、各行はアンケートの結果を表します。 、「ABCDEFGHIJ」のようなもの。このファイルをどうやって入手しましたか?はい、私が手動で入力したわけではないことを認めます (オンライン アンケートをしてみませんか? 大変助かります)