当ページのリンクには広告が含まれています。
CakePHPで開発する上で、Debug Kitは必須ですよね。
ということで、Debug Kitのインストール手順をメモメモ。
あとで綺麗な記事にまとめようw
以下のコマンドをアプリケーションの ルートディレクトリー (composer.json ファイルのある場所) で実行してください。
Debug Kit – 3.xphp composer.phar require --dev cakephp/debug_kit "~3.0" bin/cake plugin load DebugKit
PS D:\htdocs\XXXXX\XXXXX> php composer.phar require --dev cakephp/debug_kit "~3.0"
Could not open input file: composer.phar
開けないとw
PS D:\htdocs\XXXXX\XXXXX> composer update
Loading composer repositories with package information
Updating dependencies
Lock file operations: 0 installs, 8 updates, 0 removals
- Upgrading composer/spdx-licenses (1.5.7 => 1.5.8)
- Upgrading phpstan/phpdoc-parser (1.24.2 => 1.24.3)
- Upgrading react/promise (v3.0.0 => v3.1.0)
- Upgrading symfony/config (v5.4.26 => v5.4.31)
- Upgrading symfony/console (v5.4.28 => v5.4.31)
- Upgrading symfony/string (v5.4.29 => v5.4.31)
- Upgrading symfony/yaml (v5.4.30 => v5.4.31)
- Upgrading theseer/tokenizer (1.2.1 => 1.2.2)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 8 updates, 0 removals
- Downloading react/promise (v3.1.0)
- Downloading composer/spdx-licenses (1.5.8)
- Downloading phpstan/phpdoc-parser (1.24.3)
- Downloading theseer/tokenizer (1.2.2)
- Upgrading symfony/string (v5.4.29 => v5.4.31): Extracting archive
- Upgrading symfony/console (v5.4.28 => v5.4.31): Extracting archive
- Upgrading react/promise (v3.0.0 => v3.1.0): Extracting archive
- Upgrading composer/spdx-licenses (1.5.7 => 1.5.8): Extracting archive
- Upgrading symfony/yaml (v5.4.30 => v5.4.31): Extracting archive
- Upgrading symfony/config (v5.4.26 => v5.4.31): Extracting archive
- Upgrading phpstan/phpdoc-parser (1.24.2 => 1.24.3): Extracting archive
- Upgrading theseer/tokenizer (1.2.1 => 1.2.2): Extracting archive
Package zendframework/zend-diactoros is abandoned, you should avoid using it. Use laminas/laminas-diactoros instead.
Package aptoma/twig-markdown is abandoned, you should avoid using it. No replacement was suggested.
Package asm89/twig-cache-extension is abandoned, you should avoid using it. Use twig/cache-extension instead.
Package phpunit/php-token-stream is abandoned, you should avoid using it. No replacement was suggested.
Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested.
Generating autoload files
37 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
Found 1 security vulnerability advisory affecting 1 package.
Run "composer audit" for a full list of advisories.
あ。composer.phar
ないわw composer.json
ならあるから書き換えてみるか。
PS D:\htdocs\XXXXX\XXXXX> composer.json require --dev cakephp/debug_kit "~3.0"
composer.json : 用語 'composer.json' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前と
して認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから
、再試行してください。
発生場所 行:1 文字:1
+ composer.json require --dev cakephp/debug_kit "~3.0"
+ ~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (composer.json:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Suggestion [3,General]: コマンド composer.json は見つかりませんでしたが、現在の場所に存在します。Windows PowerShell は、既定では、現在の場所からコマンドを読み込みません。このコマンドを信頼する場合は、".\composer.json" と入力してください。詳細については、"get-help about_Command_Precedence" と入力してヘルプを参照してください。
違うな。ぐぐるか。
うーん…。
composer.pharとはComposerの本体であり実行ファイルである。
ワクガンス | Composerの覚書
コマンドプロンプトでphpコマンドを通して動かす。
あほだwww
あんまよく分かってなかったな私www
PS D:\htdocs\XXXXX\XXXXX> php -v
PHP 7.4.33 (cli) (built: Nov 2 2022 16:00:55) ( ZTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
PS D:\htdocs\XXXXX\XXXXX> composer -V
Composer version 2.6.5 2023-10-06 10:11:52
どっちもパス通ってるな。
……ん?
デフォルトで、DebugKit はデフォルトのアプリケーションスケルトンにインストールされています。
Debug Kit – 3.x
なんとwww
ってことは有効化するだけでいいのかwww
PS D:\htdocs\XXXXX\XXXXX> bin/cake plugin load DebugKit
D:\htdocs\XXXXX\XXXXX\src\Application.php modified
……表示されないなw
ぐぐる。
そもそもDebugKitがpluginsにあるのか?w
ないじゃんwwww
デフォルトのCakePHPの画面確認してみるか。
あれ?
loadしてるな。
logs/error.log
を見てくる。
2023-11-23 19:51:53 Warning: DebugKit is disabling itself as your host `XXXXX.com` is not in the known safe list of top-level-domains (localhost, invalid, test, example, local). If you would like to force DebugKit on use the `DebugKit.forceEnable` Configure option.
色々調べてみたところ、CakePHP 3.6.2 から DebugKit の使用方法が変更されており、「安全なトップレベルドメイン」のリストに含まれない FQDN では DebugKit のパネルは既定値では表示されないようになったようだ。
このバージョン以降の CakePHP では、
- デバグモードであること (Configure 定数 ‘debug’ が true)
- 当該ホストが安全なトップレベルドメインに属しているか、あるいは Configure 定数 ‘DebugKit.forceEnable’ が true に設定されている
の両方を満たしていないと DebugKit パネルが表示されないようになっているので注意が必要だ。
CakePHP3 で DebugKit が表示されない|加藤 正人|株式会社パルムゲート
ほう。
それは分かったんだが…設定場所どこだw
config/bootstrap.php
とかにないな…
こんにちは、
私も悩みました。app.phpに、
‘DebugKit’ => [
‘forceEnable’ => true,
]と追記すると動きます。ご参考までに。
cakephp3のDebugkitが使えないと思ったら、たいしたことない理由だった – もがき系プログラマの日常
表示された!
まとめ
個人的にConfigure::read(‘debug’)の判定があるので、それで判断させてほしいです。。
cakephp3のDebugkitが使えないと思ったら、たいしたことない理由だった – もがき系プログラマの日常
ほんこれ