こんな簡単なことがドキュメントを読んでもわからなかったのでメモ。 multipleOptions('checkboxes', ['min' => 1], '選択してください。') return $validator; } multipleOptions で multiple ルールが追加されます。 2つ目の引数が下記の Validation:multi…
どハマリした曲の2021年版です。 2020年の記事はこちら。 s4-ba.hatenablog.jp Mac で Apple Music で曲を聴いていると、アルバムの終わりににテイストの近い曲を自動再生してくれるようになったので、これで好みの曲に出会うことが増えた気がします。 曲名 …
普段は Docker の公式 PHP イメージ上で開発しているんですけど、 $PHP_INI_DIR/php.ini に設定を記述しても反映されず、いろいろ試した結果 Apache は DocumentRoot に php.ini があればそれを優先する という仕様がありました。 Docker の公式 PHP イメー…
PHP でディレクトリ内を全走査してファイルを操作(高度なギャグ)するときの方法を調べました。 たまにしかやらないから全然身につかないです。 今回は下記のようなファイル構造で target 以下のファイルを操作する場合を考えます。 ~/file_test » tree ./ …
どハマリした曲の2020年版です。 2019年の記事はこちら。 s4-ba.hatenablog.jp 2020年は音楽を聴いている時間が半減しました。 YouTube で知らない曲に出会うことも減った気がします。 曲名 / アーティスト名 をタイトルにして公式で聴けるものがあれば埋め…
UI や項目の設計ではなく、システムとして動作や URL の設計です。 SEO 的なものも考慮しません。 セキュリティに関しても触れないです。 よくあるお問い合わせフォームのようなものを MVC で構築する場合を考えます。 要件 お問い合わせがあったときに、お…
どハマリした曲の2019年版です。 2018年の記事はこちら。今読み返すと結構小っ恥ずかしいです。 s4-ba.hatenablog.jp 曲名 / アーティスト名 をタイトルにして公式で聴けるものがあれば埋め込んでおきます。 2018年版は曲が多すぎてページが重くなってしまっ…
CakePHP4 がリリース されてから、これまで作ってきたものを CakePHP4 でいちから書き直してみてます。 この記事は EventListener の使い方を簡単に説明します。 CakePHP3 でも同じなハズです。 便利な Behavior を使いたい Cookbook では Behavior の例とし…
WordPress 案件に遭遇して初めて一から WordPress を構築したので知見をメモ。 構築にあたっては下記記事を参考にしました。 qiita.com Bedrock は WordPress における Web サイト開発をモダンにし、設定管理を簡単にし、いい感じのフォルダ構成を提供してく…
便利な拡張機能を紹介している記事をよくみますが、利用しないものも理由を添えてメモっておくのも大事だと思います。 僕は PHP, HTML, CSS, JS での開発がメインです。 利用していない拡張機能 Bracket Pair Colorizer Bracket Pair Colorizer - Visual Stu…
PHP のフォーマットは squizlabs/PHP_CodeSniffer を使うのがスタンダードだと思います。 PHP Sniffer & Beautifier は プロジェクト固有のルールで phpcs と phpcbf を実行できる 拡張機能です。 インストール composer で PHP_CodeSniffer をプロジェクト…
多次元配列でキーが存在しているかのチェックを頭から行うのが長いなと思って調べてたら、isset は一発で存在チェックしてくれると知りました。 ['b' => 1]]; // isset var_dump(isset($arr['a'])); // bool(true) var_dump(isset($arr['a']['b'])); // boo…
階層メニューなどを作るときなんかに再帰的に作れないかなと思ってやってみたらできちゃいました。 CakePHP2 以前でも可能かもしれないです。 どこかでメニューの配列を定義します。 '親1', 'url' => '/parent1/', 'child' => [ ['label' => '子1', 'url' =…
React 未経験なのに React Native + Expo でスマホアプリのモックを作っているので、開発環境の構築からつまずきポイントまでまとめます。 環境は Mac + VSCode です。 各種インストール 先人に助けてもらいます。 qiita.com qiita.com Homebrew は入ってい…
マニュアルにある 定義済み定数 をオプションに指定して json_encode で変換した後の文字列を読みやすいようにします。 変換するのはこのデータ。 's4_ba', 'web' => 'http://s4-ba.hatenablog.jp/', 'language' => '日本語', 'skill' => [ 'languages' => …
音楽を聴きながら仕事しているので、かなり長時間音楽を聴いているつもりです。 Apple Music にも加入しているのもあり、ものすごい量の曲を聴ける環境なので、 今どんな思いで聴いているかを忘れないようするための記録です。 その年にハマった曲を記録する…
過去にやったやつの CakePHP3 版です。 s4-ba.hatenablog.jp 同じように Paginator のような Component と Helper を自作します。 CakePHP2 のときと比べてシンプルでわかりやすくなってると思います。 CakePHP 3.6.7 Component が呼ばれたら Helper も自動…
どれか1つが入力されていたら OK とするようなバリデーションです。 Cookbook にもなくてググっても出ないんですけどみなさんどうしてるんでしょうか。 今回は モデルのないフォーム に実装したので、_buildValidator() に記述していますが、モデルのある通…
ババっと調べても痒いところに手が届かない記事ばかりヒットするので自分用にまとめます。 この記事もきっと痒いところに手が届かない記事です。長いです。 2018/7/14 変更 Email の非推奨メソッドを修正 s/from/setFrom/ s/to/setTo/ s/subject/setSubject/…
VSCode で矩形選択したくて調べたけどマウス使った `Alt + クリック` っていうつらいやり方ばっかりヒットしてつらかったです。キーボードでやりたい病なのでメモ。
今 PHP の環境は Microsoft Web Platform Installer でインストールしたものなので、その上で CakePHP3 の Welcome ページを表示するまでにしたことを書きます。 IIS 10.0 PHP 7.1.7 For IIS Express CakePHP 3.5.6 Microsoft Web Platform Installer 5.0 Ca…
何がやりたいのかっていうと、Paginator みたいなのを自作したいです。 CakePHP 2.7.5 Component が呼ばれたら Helper も自動で呼ぶ Paginator は Controller 内で public $components = array('Paginator'); で呼び出すと、Helper も自動で使えるようになる…
Visual Studio Code 上で Git を SSH 接続で利用しようとした時にハマりました。 鍵の生成時にパスフレーズつけたときに clone とかで Permission Denied (publickey) のエラー。コンソールではパスフレーズありでも問題なく clone できたので、原因がよくわ…
65535 問題とは、巨大な JSP ファイルからできた .java ファイルがコンパイルされるときにでるアレです。 具体的には次のエラーが出ます An error occurred at line: [79] in the generated java file: [filepath] The code of method _jspService(HttpServl…
Web アプリケーションを作ってると Excel の機能をそのまま実装してくれってよく言われますよね。 競合の解決を実装した話です。 クライアントサイドの実装についてがメインです。 この記事は Excel の「競合の解決」を実装するために jQuery の Deferred を…
4つめが公開されたので解きました。感想です。 tango-ruby.hatenablog.com 公開が 1/31 で日曜の 22 時だったので公開直後は諦めて今日解きました。 今回は curl 率が低く、いろいろと駆使して解いていったので楽しかったです。 これまでのパズルの中では一…
解きました。感想です。 tango-ruby.hatenablog.com tango-ruby.hatenablog.com tango-ruby.hatenablog.com パズル 1 の記事を見つけたときは、REST しらないわ、curl しらないわでスルーしてました。 気づいたら 3 つめまで出てるし、解いてるひとたくさん…
CodeIQ に出題されていたマヨイドーロの僕の解答です。 今は設問が見れませんが出題は以下。 codeiq.jp 解答 以下が僕の解答です。 ただただ漸化式をそのままコーディングしただけのあんまり工夫のないコードになりました。 Java7 で提出しました。 import j…
JavaScript でコードの記述によって実行タイミングが違うので HTML 要素が取得できない場合があります。 仕事中にちょっとハマってしまったのでメモ。 自分でまとめないと忘れると思うので。 冷静になればすぐわかることなんですがね…。 確認したこと 具体的…
Java EE 関連で3文字の英語が頻出するので自分用まとめです。 まだまだ勉強中でおかしな点がたくさんあるはずなので鵜呑み厳禁です。 間違い等があればご教示願います。Java EE7 準拠です。