
2020年5月お絵かき掲示板POTI-board改二爆誕す
POTI-board改から改二へ。
2020年にお絵かき掲示板?という方はまずこちら。
はい。しぃPaintBBSはHTML5になって帰って来ました。スマホやiPadでも描けるようになりました。
掲示板もphp7対応のPOTI-board改ができたので大丈夫です。
本当に大丈夫ですか?


phpのエラーの表示レベルを高くして、非推奨のエラーを含めて表示した画面です。
POTI改の初期バージョンのエラーなので、POTI改の最終バージョンではこのエラーも解消されています。
しかし、テンプレートエンジンは2003年に作られたものを修繕して使っている状態…。
古いテンプレートエンジンなので、セキュリティリスクを懸念する方も…。
POTI-board改二の開発は2018年9月から
POTI-board改を他のテンプレートエンジンで動くようにする模索は2018年からはじまっていました。しかし移植がうまくいきません。
POTI-board改が動かなくなったらそこで終わり?と思っていたのですが…。
2020年5月事態は急展開を迎えます。
改二爆誕す
2020年5月、改二の開発を一からやり直す事になりました。
そして…。ちょうどその頃にプログラムエディタをVScodeに入れ替えました。
この拡張機能をインストールしました。
すると…。

関数内でSkinny.phpが動作しないのは…。
$Skinnyが未定義になっていたからでした。
global $Skinny;
global宣言すれば問題なく動作します。
一方ですでにSkinny.phpの文法で書いたテンプレートはできていました。
この2つを合体すると…
「こいつ…動くぞ!」

ほぼはじめて動いた瞬間のスクリーンショットです。
テンプレートエンジンSkinny.phpはhtmltemplate.incの代替にぴったり
potiboard.phpのプログラムの書き換えは最小限ですみました。
Skinnyでは表示させる為のデータを「連想配列」として最後にまとめてSkinnyへ渡します。
作者はこの出力用の連想配列に「$out」とする事を習慣としていますので、以降この名前で解説していきます。
POTI-boardは出力用の連想配列に「$dat」を使っていました。
この「$dat」をそのまま使う事ができました。
Skinnyには foreach( $value as $k => $v ) のような一次配列をループするタグは用意していませんので、ループさせたい場合はeachタグに渡せる構造の配列を作るようにしてください。
foreachは…配列をimplode()で結合すれば…。実はforeachに相当する機能もあるようなのですが。
改二テンプレート各種
懸念材料の一つだったSkinny.phpに対応させるためのテンプレートの作り直しもすすみPINKというテーマの改二バージョンもできました。
5種類のテーマを切り替えて使う事ができます。
Skinny.phpのキャッシュ機能で動作もより高速になりました。
こうなると…。古いテンプレートエンジンを使った改を維持するより改二に移行したほうがいいのは明らかです。
改の開発を終了して改二に移行する事になりました。
5月の爆誕から5ヶ月。
POTI-boardはまだ進化をつづけています。
新機能に関する事はまた別の記事にまとめたいと思います。
↑POTI-board改二のダウンロードはこちらから。
そして1年半が経過…。
再度のテンプレートエンジンの変更となりました。
ChickenPaintが使えるようになった時点で改二からEVO v3.xに名称を変更しましたが、今度はEVO v.5.xです。