at: TechFeed Conference 2022 url: https://techfeed.io/events/techfeed-conference-2022 date: 2022/05/14 speaker: uzulla
![近況PHP / PHP in now a days](https://cdn-ak-scissors.b.st-hatena.com/image/square/2633b5893dd5cff9461dfd4b32e3ec34d7a4f20f/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F878df957bcda482c9a19649ba7eef1bf%2Fslide_0.jpg%3F21412547)
この記事は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の特別な記法によって動的戻り値型拡張が必要だったケースの一部をカバーし
<? include("abc.php"); include("def.php"); include("conf.php"); include("db.php"); include("some.php"); include("what.php"); Define("NUM", 100); class super_calc extends great_calc { /* * * * コンストラクタ * * * * */ public function super_calc($initial_num){ $this->db = DB::getDb(DSN); $this->initial_num = $initial_num; } /* * * * チェック * * * * */ public add_ok($add_num){ $res = $this->addable($add_num);
0 fgets <internal>:-1 1 <main> <internal>:-1 0 fgets <internal>:-1 1 <main> <internal>:-1 0 fgets <internal>:-1 1 <main> <internal>:-1 ... 0 time_nanosleep <internal>:-1 1 PhpProfiler\Lib\Loop\LoopMiddleware\NanoSleepMiddleware::invoke /home/sji/work/php-profiler/src/Lib/Loop/LoopMiddleware/NanoSleepMiddleware.php:33 2 PhpProfiler\Lib\Loop\LoopMiddleware\KeyboardCancelMiddleware::invoke /home/sji/
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
はじめましての方ははじめまして、アルバイトとして働いているJavakkyです。 本記事では、データベースを利用するアプリケーションのテストに利用できるphp-mysql-engineというライブラリの導入方法と使用感について紹介します。 github.com php-mysql-engineとは php-mysql-engineは動画共有サイトを運営するVimeo社が開発しています。このライブラリの目論見はVimeo Engineering Blogで説明されています。 medium.com このライブラリはVimeo社のMatt Brownさんが二年前に開発していたhacktophpを用いて、Slack社がHackで実装したslackhq/hack-sql-fakeをPHPコードに変換したものを下敷きにしています。 開発者のMatt Brownさんは、静的解析でVimeo社のコードを改善
この記事は Laravel Advent Calendar 2020 - Qiita 最終日の記事です。 TL;DR DDD や "真の" クリーンアーキテクチャは, Web 業界における大抵の現場ではオーバースペックだし,導入しても全員がついてこれるとは限らない app/UseCases ディレクトリだけ切って,ドメインごとに単一責務なクラスを置くと使いやすいよ ActiveRecord 指向のフレームワークで Repository パターンを無理に導入すると死ぬので, UseCase で Eloquent Model の機能を使うことを恐れるな はじめに Zenn では初投稿です。日本の Laravel コミュニティではもうお馴染みのようで実はあまり顔を出していない(?) @mpyw と申します。オンラインサロンの火付け役となった Synapse が最初の仕事でしたが,就職後すぐ会社が
これはさりげなく スターフェスティバル Advent Calendar 2020の20日目です。 PHPカンファレンス2020 2019年は登壇などを控えて一休みの期間としていたので一年振りくらいの と登壇となりました。 発表の内容としてはここ3、4年注力しているデータ処理まわりから、 PHPにおけるWebアプリケーションなどでも活用することができる題材を取り上げてお話させていただきました。 要するに事業に関わっている開発は年々要件も複雑になっていき、 問題解決するためにはいろんな手法があるけど、きちんと分析して 開発しやすいよう、フレームワークにべったり依存してつくるのではなく、 数年先を見越してつくったり、改善する方法の一つにCQRSもありますよ、という話です。 お話したように、全てのアプリケーションでペイできるものではありませんし、 ある程度大きな規模だったりある程度複雑な機能だった
2022-07-19 これらの問題を解決する Random Extension 5.x 並びに Random Extension Improvement RFC が可決され、 master に merge されました。 PHP 8.2 より利用可能になります。 https://wiki.php.net/rfc/rng_extension https://wiki.php.net/rfc/random_extension_improvement https://github.com/php/php-src/commit/4d8dd8d258ff365b146bcadcb277ede8992706d0 2022-06-18 これらの問題を解決するため、 PHP 8.2 に対して Random Extension 5.x の RFC が作成され、投票が始まっています 2021-01-15 PHP
Amazon Web Services ブログ サーバーレス LAMP スタック – Part 3: Webサーバーの置き換え 本投稿は AWS サーバーレス アプリケーションのシニアデベロッパーアドボケートである Benjamin Smith による寄稿です。 本シリーズの他のパートは以下のリンクからアクセスできます。また、関連するサンプルコードはこちらの GitHub リポジトリにあります。 パート1:サーバーレス LAMP スタックの紹介 パート2:リレーショナルデータベース パート4:サーバーレス Laravel アプリの構築 パート5:CDK コンストラクトライブラリ パート6:MVC からサーバーレスマイクロサービスへ この投稿では、Web サーバーを使用せずにサーバーレス PHP アプリケーションを構築する方法を学びます。 この投稿の後半で、bref および Serverle
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く