PHP

PHPPHP
PHP

PHP-FPMでSIGSEGVエラーが出る(たぶんjetpackのせい)

概要 Wrodpressが動いているWebサーバーで、時折以下のような画面で表示されない問題が発生するようになったので、追跡してみた。 Service Unavailable The server is temporarily u...
CakePHP3.x

[CakePHP3.x]buildRules()メソッドでもエラーメッセージが出せる

belogsToとかの存在チェックのバリデーションを書くと思いますが、実はbuildRules()のところでもできちゃいます。 何もしないと、存在しないIDを保存しようとすると This value does not exist ...
CakePHP3.x

[CakePHP]phinxlogと現状のDBが合ってない時の最終手段

なんか知らんが、カラムがないって言われる・・・ Error: SQLSTATE: Column not found: 1054 Unknown column 'hogehoge_id' in 'where clause' 確かに...
Docker

VSCodeでPHPのxdebugしようとしても[Step Debug] Time-out connecting to debugging client になる

WSL2上のUbuntuで動いているDockerコンテナ動かしていたら、こんな感じのエラーになりました。 PHP message: Xdebug: Time-out connecting to debugging client, w...
PHP

コンソールでphpinfo()を実行したい

PHPの設定情報を知りたい場合、phpinfo()を実行すればよいのですが、いちいち公開フォルダにphpinfo()を書いたPHPファイルを置いてブラウザで確認するのは面倒。 できればコンソールで実行して確認したいってことがあります。 ...
Laravel8.x

Laravel sailでLaravel開発&デバッグ環境構築

動作環境 今回の環境は以下の通り Ubuntu Docker(インストール済み) 作業環境は Windows10Pro VSCode DockerDesktop 今回は、Ubuntu上で構築したDocker環境を、W...
PHP

VSCodeにコンテナ内のPHPを指定する方法

VSCodeでPHP IntelliSenseを有効化すると、こんな画面が表示される場合があります。 通常はsetting.jsonにphpのバイナリがある場所を指定すればOKです。 ですがPHPをDockerで動かしている...
BootStrap

CakePHP4にBootstrap4を組み込んでみる

CakePHP4にBootstrap4を組み込む方法はいくつかあるかと思います。 単純に、Bootstrapをダウンロードしてきて、webrootに配置。layoutファイルなどで読みこませるだけでも使うことは可能ですが、今回はプラグイン...
CakePHP3.x

コントローラーから直接画像を出力させる

今回は、コントローラーから画像を出力させる方法をご紹介します。 画像をファイル出力してリンクさせる方法もありますが、一時的な画像の場合は後処理が面倒です。 そこで今回は直接レスポンスでバイナリを返すという方法をご紹介します。 なお...
CakePHP3.x

[CakePHP4]途中で追加したカラムが保存されない

Modelの設計を行っているときに、途中でカラムを追加するというようなことはよく発生すると思います。 ですが、たまに追加したカラムがなぜか保存されないという問題が発生します。 この問題は、だいたいはEntityの$_accessib...
CakePHP3.x

[CakePHP4]migration_diff しても差分が認識されない

テーブル定義を直接変更した後にmigration_diffコマンドを使うと差分を認識してMigrationファイルを自動生成してくれる便利な機能があります。 ./bin/cake bake migration_diff (設定名) ...
CakePHP3.x

エラー画面のレイアウトを変更する

CakePHP4でレイアウト、つまり大枠の部分のデザインテンプレートは、デフォルトでは template/layout/default.php が使われます。 これは、レイアウトファイルといわれていますが、デフォルトのレイアウトファイル...
CakePHP3.x

[CakePHP4]Queryからの日付取得

CakePHP4でqueryからカラムの日付をstrtotime()で変換しようとしたら以下のようなエラーになります。 strtotime() expects parameter 1 to be string, object given ...
CakePHP3.x

PHPのオブジェクトコピー

CakePHPのqueryビルダで、こんな感じで条件を変えて連続して結果を取得したいなぁ‥というとき。 例えばこんな感じのことをしたいとすると $query = $this->find()->where(共通の複雑な条件);...
CakePHP3.x

Viewにセットした値をコントローラーで取得する

Viewにセットした値をコントローラーで取得する方法です。 古いバージョン(CakePHP2系) コントローラークラスにプロパティーがありますので、そこから取得が可能です。 $varname = $this->viewVars;...
CakePHP3.x

CakePHP4で動的生成しながらファイルダウンロード

CakePHP4でのファイルのダウンロード方法を解説します。 CakePHP3/4系での記事になります。 通常の方法 まずは、簡単なデータを一括で生成してからダウンロードさせる方法です。 $body = "あいうえお"; ...
CakePHP3.x

サーチプラグインでカラムを連結して検索したい

friendsofcake/search を使っての検索は非常に楽なんですが、いろいろわからない点が多いんですよね。 カラムを連結して検索する要件があたのですが、手間取ったので記事にしました。 CakePHP2の場合 CakePHP2...
CakePHP3.x

count() メソッドは limit、 offset、 page 句を無視する?

CakePHP4で、データのエクスポートをするためにlimit()とpage()を組み合わせてcount()で残りの数を見ながら出力していたのだけど、なんか終了しない。 むむむ?と思って調べてみたら。 count...
CakePHP4

[CakePHP4.x]複数認証の実装方法

CakePHP4で認証システムを実装するのは若干以前より面倒になった感があります。 通常の実装方法に関しては、こちらで以前記事にしました。 一般的な実装方法についてわからない場合はcakebookの下記のページを参照すればよいかと思いま...
CakePHP3.x

CakePHP4のselectの一括カラム登録方法

以前、CakePHPのクエリビルダ―でselectでカラムを登録すると他が消えてしまって、全部登録しなおさなくちゃいけなくてめんどくさいという記事を書きました。 でも、その後しらべたら、あんなことしなくても簡単にsel...
タイトルとURLをコピーしました