RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

ブログ Web制作

[PHP]まとめ読みをPSRで改良する(1)

投稿日:

this trash wanted to go in a can, but the can was too full, so it's waiting for the next one

今回の改良対象

ミニ四駆まとめサイト

なぜやるのか?

  • PHPのバージョンアップによる速度の向上
  • 一番はこれでしょう。
    今のはPHP5.2で動いています。
    1割から5割の速度向上が見込まれます。
    1秒でも早く表示することによりユーザーの時間を無駄にさせないためです。
    まとめサイトは居続けてもらうのが目的ではないので速さが大事。

  • やってみないと理解できない
  • PHPのオブジェクト指向を理解しようとする初心者の立場で「どこがわからないのか?」「わかりにくいのか?」を分析します。
    「プログラム = 敷居が高い」のは、そういった解説も少ないからじゃないかなと思います。

  • 人は忘れやすい
  • 書いておかないと「どこがどうだったか」なんて忘れます。
    書いておくと後で解説を書くときに書きやすいし、丁寧に書ける。

  • PHPのバージョンが低いとセキュリティホールがある
  • まとめ読みの質の向上
  • EBS3(戦略ゲーム)を作りたい、やっぱり配布したい
  • せっかくHTML5とCSS3が出てきたのに作らないのはないでしょ!というわけです。
    個人制作のゲームがほぼ死滅しているのでチャンスだと思ってます。

  • 現在のコードが酷い

いろいろあります。/(^o^)\

現在の惨状

現在のコード(一部)

# 期間ランキング記事
$i=1;
$sql=mysql_query("SELECT * FROM article ORDER BY count DESC");
while ($ART=mysql_fetch_assoc($sql)){
	if(!$ART[count]){break;}
	#集計
	$HASH=explode($SET[INTER],$ART[id]);
	$blogid=$HASH[0];
	$time=$HASH[1];
	$WEEK_BLOG[$blogid]+=$ART[count];
	$COUNT_BLOG[$blogid]+=$ART[count_all];
	#表示
	if(preg_match('/PR:/',$ART[title])){continue;}//PR排除
	if($html_art_week&&$i<50){$html_art_week.="<tr><th></th></tr>\n";}
	if($i<50){$html_art_week.="<tr><td><strong>${i}位&nbsp;<span style='color:#FF8C00;'>$ART[count]</span>counts</strong><br><a href='$SET[path_link]?q=$ART[id]' target='_blank'>".escape($ART[title])."</a></td></tr>\n";}
	$i++;
}

「うーんこれは一体・・・」みたいなコードです。
可読性低い、速度考えてない、なんでも言えるような状態。

これではEBS3を作っても誰も改造できないコードになってしまいます!

次の記事

更新したら書き換えます。

-ブログ, Web制作

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

Work It! 初期版Webアプリリリース

ソーシャルタイムトラッキングツールアプリWork It!(https://work-it.biz/)をリリースしました。 まずは、今何ができるのかをお伝えし、将来的な予定(つまり開発予定)となぜ開発し …

(VPSでつくる) MariaDB(MySQL)インストール

連載第八回目です。 今回はMariaDBをインストールします。 MariaDBはMySQLの完全互換で、高速性を持っているので採用します。 SQLクエリも全く同じものが使えます。 詳しくはMariaD …

[Meisyo]ver0.04へのアップデート

Meisyoがバージョン0.04になりました。 バージョンNo.の基準はありません。(1.00(正式リリース)が遠い) 下記機能が0.04で追加されました。 目的としては、「ユーザがゲームを長く楽しめ …

[python]MNISTの学習モデルを保存し、テストする

機械学習のHello World的なMNISTにて、学習モデルを保存し、実行する際のメモ。 用意するもの PC コマンドプロンプト インストール(python、sklearn、numpy) 学習時のコ …

「名将と呼ばれた者達」目標

目標 ・アクティブプレイヤー100人以上(2018年12月末) ・登録人数100人(2018年9月)→達成し次第サーバー変更(AWS?)#試合クソ重くてすみません!弱さーばなんです ・2018年8月公 …