[フレーム]
はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

検索対象

並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 11 件 / 11件

人気順

絞り込み

  • 検索対象

  • ブックマーク数

  • 期間

  • セーフサーチ

phpstanの検索結果1 - 11 件 / 11件

  • PHP にはアプリケーションを実行せずに静的にコード品質をチェックする静的解析ツールがいくつかあります。有名なところでは、PHPStan や Psalm、Phan、PHPMD などがあります。本エントリでは、まだこうした静的解析ツールを導入していないプロジェクト向けに PHPStan 導入の流れをまとめてみました。 3(4) 行まとめ サンプルコード PHPStan とは 適用方針 Playground PHPStan のインストール Composer Composer(Larastan) Docker 設定ファイルの作成 PHPStan の実行 主なエラー(level=0) baseline ファイルの作成 baseline ファイルの修正 CI での自動実行 GitHub Actions の設定 ブランチ保護ルール さいごに 3(4) 行まとめ composer もしくは Docker

  • Tech Dept. 基盤グループエンジニアの @tenkoma です。 BASEには50以上のPHPプロジェクトのプライベートリポジトリがあります。 (アプリケーションは十数個で、残りの多くが、アプリケーションが依存するライブラリです) 過去4年ほどの間に新規に作られたリポジトリにはほぼ最初からPHPStanが導入されていますが、それ以前から開発していたリポジトリには導入されていないものが多数ありました。 それらのリポジトリにPHPStanを導入していったので、なぜ導入したか、導入方法、得られた効果について紹介します。 PHPStanとは PHPコードを実行せずに、実行時にエラーになりうる箇所を検出するツールです。PHPStanを利用しCIに組み込むと、テスト実行せずに検出できるバグの一部は、PHPStan解析で指摘してくれるので、コードレビューの負担が減ることが期待できます。 なぜPH

  • この記事はPHPStan開発者のOndřej Mirtesによって2022年4月26日にPHPStan Blogに書かれた記事を翻訳したものです。 phpstan.org 条件付き戻り値型 (Conditional return types) この機能の大部分はRichard van Velzenが開発しました。 PHPStanは初リリース以来、関数呼び出しで渡された引数によって様々な型を返す方法を提供してきました。いわゆる動的戻り値型拡張(dynamic return type extensions)は非常に柔軟です。実装できる任意のロジックによって型を解決できます。しかし、PHPStan拡張の核心となるコンセプトには学習コストがかかります。 PHPStan 0.12ではジェネリクスが導入されました。これはPHPDocの特別な記法によって動的戻り値型拡張が必要だったケースの一部をカバーし

  • この記事はPHPStan開発者のOndřej Mirtesによって2024年11月11日にPHPStan Blogに書かれた記事を翻訳したものです。 phpstan.org PHPStan 1.0は約3年前にリリースされました。プロジェクトが順調に成長していることを報告できて嬉しく思います。それ以来176回のリリースでは、新機能の実装、バグの修正、そして2.0のための基礎固めが行なわれてきました。そうです、私たちは休むことなく、栄光に甘んじることもありませんでした。 私は2.0のリリースを長い間待ち望んでいました。私たちが取り組んできた新機能を、ついに皆さんに楽しんでいただけるようになります。それらの一部は既に2年以上もアーリーアダプターの方々に楽しでいただいていたものです。 しかし、今日リリースされたのはコードと分析の変更だけではありません。PHPStanは伝説的なPHPマスコットに独自

  • PHPStan (PHP Static Analysis Tool)はコードを実行せずに検査できるツールです。本稿では業務アプリケーションにPHPStanを導入するまでに押さえておきたい事柄を記述します。 導入 PHPStanは本稿記述時点の1.9.x系において、PHP 7.2以降で実行できます。PHPStanは composer require --dev phpstan/phpstan でのインストールが基本です。 プロジェクトルートの phpstan.dist.neon に、以下のように記述してください。 pathsには実際にPHPファイルが格納されているディレクトリを指定しましょう。たとえばフレームワークによっては app inc public のようなディレクトリに配置されているかもしれません。 levelは現在のところ1〜9が定義されており、文字列の"max"を指定することで将

  • こんにちは、スターフェスティバル株式会社でバックエンドエンジニアをやっている吉田あひるです。 先日、僕が関わっているプロダクトで発生していた 2000 個弱の PHPStan のエラーを一部を除きほぼ全て解消したので、その際に何に気を付けて作業をしていたのか、そして一連の作業の中でどういった恩恵を受けることができたのかを共有できればと思います。 PHPStan とは 詳しい説明は割愛しますが、PHP の静的解析ツールで型レベルの整合性のチェックなどを行うことができるツールです。 なぜ PHPStan のエラーを解消したかったのか バグをリリースする確率を減らせる 僕の経験上、ある程度の量のコードを書いたあとに PHPStan を実行するとほぼ確実に何かしらのエラーが報告されるため、少なくとも僕にとっては静的解析なしで型レベルの整合性を担保し続けることは難しいということがわかっています。 P

  • PHP のコードを実行する前に、バグがあるかどうか調べられると便利だとは思いませんか? PHP はスクリプト言語ですので、いくら文法的に正しいコードであっても、実際に実行させるまでバグか発生するかどうかわからないという、スクリプト言語であるが故の本質的な問題を抱えています。 C や Java など他のコンパイル言語ではコンパイル時にエラーになるようなコードであっても、スクリプト言語である PHP では、実行させるまでエラーになるかどうかわからないのです。 PHP のコードをチェックする似たようなツールとして PHP_CodeSniffer や、PHP の lint コマンド php -l が思いつきますが、それらはあくまで文法レベルでのチェックにすぎません。 いくら文法が正しくともエラーは発生します。 では、PHPUnit などの単体テストを実行して見つければ良いじゃないかと思うかもしれま

  • 半年くらい前にPHPStan静的解析をはじめました。 徐々に対象ファイルを増やし、現在では2000超のファイルをスキャンしています。 level0(不明なclass、関数の参照などの基本的なチェック...

  • この記事はPHPStan開発者のOndřej Mirtesによって2024年8月27日にPHPStan Blogに書かれた記事を翻訳したものです。 phpstan.org 最初のPHPStan 1.0リリースから3年が経ち、PHPStan 2.0が近づいてきました。新しいメジャーバージョンのアイデアのリストを精査した結果、いくつかを前倒しして1.xシリーズでリリースし、Bleeding Edge 設定トグルの背後に隠して、PHPStanユーザーにより早く楽しんでもらえるようにしました。 これは PHPStan 1.12に限ったことではなく、1.0以降に当てはまります。Bleeding Edgeを有効にすると、基本的には未来に生きることになります。次のメジャーバージョンですべてのユーザーに対して有効になる新しいルールと動作の変更を利用できます。これがアーリーアダプターへの特典です。 ここにひ

  • はじめに Baseline削減したいよね やったこと 1. PHPStanが出している警告の分析 2. Rectorについて学ぶ 3. Rectorを使ってReturnTypeにvoidがついていない場所にvoidをつける 4. 返り値の型を特定できる関数・メソッドに返り値の型をつける修正 5. private static arrayをconstへ変更する 6. 継承されていないクラスにfinalフラグをつける 7. Class.notFoundの修正 どうなった まとめ はじめに こんにちは。pixivでアルバイトをしているmalsukeです。2024年11月下旬にピクシブに参加し、現在は主にプロジェクトのリファクタリングを担当しています。この記事ではRectorを用いて、入社10日目までにpixivをはじめ、社内のPHP製のサービスのソースコードを持つpixiv.git内のPHPSt

  • PHPStanはPHPの静的解析ツールです。現代のPHPerはみんな使ってるよ。 ......ところで、みなさんはPHPStanをどうやってインストールしているのでしょうか。 PHPStan開発者のOndřej Mirtesは次のように述べています。 多くの場合において、Ondřejの言う通りcomposer require --devが最善のインストール方法です。 この記事では、なぜそれが推奨のインストール方法だと言えるのか、どのような場合に別の選択肢が候補に挙がるのかを解説します。 あと、この記事はPHPカンファレンス沖縄2022でPHPStanの使い方を説明するのにインストール方法まで説明する時間がとれないので書きました。 あらかじめ知っておきたいこと 事前知識: PHPStanパッケージの構造 PHPStanのリポジトリはGitHubでは以下の2リポジトリに分かれています。 https:/

1
(追記) (追記ここまで)

キーボードショートカット一覧

j次のブックマーク

k前のブックマーク

lあとで読む

eコメント一覧を開く

oページを開く

はてなブックマーク

公式Twitter

はてなのサービス

Copyright © 2005-2025 Hatena. All Rights Reserved.
設定を変更しましたx

AltStyle によって変換されたページ (->オリジナル) /