HackMD
  • Prime
    Prime  Full-text search on all paid plans
    Search anywhere and reach everything in a Workspace with Prime plan.
    Got it
      • Create new note
      • Create a note from template
    • Prime  Full-text search on all paid plans
      Prime  Full-text search on all paid plans
      Search anywhere and reach everything in a Workspace with Prime plan.
      Got it
      • Options
      • Versions and GitHub Sync
      • Transfer ownership
      • Delete this note
      • Template
      • Save as template
      • Insert from template
      • Export
      • Dropbox
      • Google Drive
      • Gist
      • Import
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
      • Download
      • Markdown
      • HTML
      • Raw HTML
      • Sharing Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • More (Comment, Invitee)
      • Publishing
        Everyone on the web can find and read all notes of this public team.
        After the note is published, everyone on the web can find and read this note.
        See all published notes on profile page.
      • Commenting Enable
        Disabled Forbidden Owners Signed-in users Everyone
      • Permission
        • Forbidden
        • Owners
        • Signed-in users
        • Everyone
      • Invitee
      • No invitee
    Menu Sharing Create Help
    Create Create new note Create a note from template
    Menu
    Options
    Versions and GitHub Sync Transfer ownership Delete this note
    Export
    Dropbox Google Drive Gist
    Import
    Dropbox Google Drive Gist Clipboard
    Download
    Markdown HTML Raw HTML
    Back
    Sharing
    Sharing Link copied
    /edit
    View mode
    • Edit mode
    • View mode
    • Book mode
    • Slide mode
    Edit mode View mode Book mode Slide mode
    Note Permission
    Read
    Owners
    • Owners
    • Signed-in users
    • Everyone
    Owners Signed-in users Everyone
    Write
    Owners
    • Owners
    • Signed-in users
    • Everyone
    Owners Signed-in users Everyone
    More (Comment, Invitee)
    Publishing
    Everyone on the web can find and read all notes of this public team.
    After the note is published, everyone on the web can find and read this note.
    See all published notes on profile page.
    More (Comment, Invitee)
    Commenting Enable
    Disabled Forbidden Owners Signed-in users Everyone
    Permission
    Owners
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Invitee
    No invitee
       owned this note    owned this note      
    Published Linked with GitHub
    Like1 BookmarkBookmarked
    Subscribed
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    Subscribe
    # PHPerのための「2021年のPHP/Laravel振り返り+2022年」を語るTechCafe ## 特集 ### 2021年の PHP TechCafe を振り返る #### [12月開催:「PHPerのためのPHP8.1をもっと語り合う」](https://hackmd.io/FJE68mqvQaqZ6tpSr7YS8Q) * 概要 * PHPers News * 「動的プロパティの禁止」が僅差で可決 * Nikita Popov、PHP開発から離れる & PHP財団設立のお知らせ * PHP8.1を振り返る * 新しい機能 * Enums * Readonly Properties * Fibers など * 非推奨になる機能 * date_sunrise() and date_sunset() * 暗黙の float から int への変換 など * 下位互換性のない変更 * 継承したメソッド内で static 変数を使う * 新しいキーワード など * おすすめポイント * PHP8.1の重要な変更点におさらいできる * なぜ変更になるのかについて知れる #### [11月開催:「PHP カンファレンス 2021を振り返る」](https://hackmd.io/6J70dVmYT6KZzkwuvHlzaw) * 概要 * PHPers NEWS * AppleはmacOS 12 Montereyで「php」のバンドルを終了するもよう。 * 新しいHTTPメソッド、QUERYメソッドの仕様 * HTML5、HTML Living Standardについて * PHPカンファレンス振り返り * PHP初心者へ推す発表 * PHPで学ぶオブジェクト指向プログラミング入門 * PHPにおけるコーディング規約と自動整形 * 配列、ジェネリクス、PHPで書けない型 * コードレビューって難しいよね * php-srcにバグ報告をしてみよう など * PHPバージョンアップ前に見ておくべき発表 * PHP8.1 Enums * What is new in PHP 8 * PHPの今とこれから2021 * 20年モノの巨大Webサービスの開発継続戦略 * レガシーシステムにおけるPHP8バージョンアップのアプリ対応記録 など * イチオシの発表 * LaravelとAWSで漸進的なプロダクト開発 * SymfinyとDoctrineで簡単クリーンアーキテクチャ * 抽象のはしごの上手な登り方 * ステップ実行だけじゃないXdebug * 技術コミュニティ運営戦略 など * おすすめポイント * 初心者向け発表を知れる * バージョンアップ前に知りたい発表を知れる * イチオシ発表を知れる * 対象のメインテーマの1年間のアップデート内容 * 2022年は9/24-25開催予定 #### [10月開催:「Laravel 入門を語り合う」](https://hackmd.io/@E6hhS-xhQIqrpKokpl_yQQ/BJeZ_mx4Y) * 概要 * Laravel導入手段 * Sail * laradoc * docker-laravel など * Laravel環境構築~開発の大まかな流れ(実演あり) * おすすめポイント * Laravel Sailなど、環境構築について確認できる * 開発環境構築~開発まで、Laravelの基本を一通り確認できる * おすすめのコマンドなど知れる * 対象のメインテーマの1年間のアップデート内容 * Laravel Sanctum 追加 * その他細かなバージョンアップ https://github.com/laravel/laravel/blob/8.x/CHANGELOG.md https://github.com/laravel/framework/releases * laravel7のセキュリティフィックスサポート終了(2021年3月31日) * larastan * https://qiita.com/MasaKu/items/7ed6636a57fae12231e0 * ~~laravel9 今年1月リリース予定?~~ * laravel9 2022年2月8日リリース予定 https://laravel-news.com/laravel-9 #### [9月開催:「PHPUnit の始め方について語りあう」](https://hackmd.io/kMweIOMfQNCBEUVLr8WJ9Q?view) * 概要 * PHPers NEWS * [level=0 から始める PHPStan(Larastan) 導入ガイド](https://blog.shin1x1.com/entry/getting-stated-with-phpstan) * PHPUnitの書き方について * サンプルコードを用いて大まかな流れを説明 * setUpメソッド * アサーション * データプロバイダ * アノテーション * モック * 実行結果の確認 * おすすめポイント * PHPUnitを書いたことが無い人でもテストコードのイメージが掴みやすい * その他便利なアサーションメソッドを知ることができる * 提供されているがあまり使わない機能等を知ることができる * 一部のアノテーション * @depends など * 対象のメインテーマの1年間のアップデート内容 * WordPressのPHPUnitが刷新 * https://capitalp.jp/2021/10/14/wordpres-phpunit-updated/ * PHPUnitはPHP8対応した? * 比較結果が変わったことは影響受けている? * PHPUnit側のふるまいはどうか? * ライブラリ側でPHP8に対応していないことでPHPUnitがこけるようになった * PHPUnit内で利用しているモックなど * https://github.com/Yoast/PHPUnit-Polyfills #### [8月開催:「PHP8.1 の新機能について語り合う」](https://hackmd.io/@E6hhS-xhQIqrpKokpl_yQQ/Bk4pulYyt) * 概要 * PHPers NEWS * [PHPバージョンアップけもの道](https://speakerdeck.com/uzulla/phpbaziyonatupukemofalsedao) * PHP8.1 のおすすめ機能について * Enum * Fibers * Readonly properties * など * おすすめポイント * 新機能についてのおさらい * リリースされる機能がなぜ必要なのかという理由が理解できる * どのような使い方ができそうかの気づきが得られる * 対象のメインテーマの1年間のアップデート内容 * PHP 8.1 でやってみた系の記事などあるか? * 独自実装されたEnumライブラリはその後どうなったか・・? * [php-enum](https://github.com/myclabs/php-enum) * 現時点でもプルリクは来ている * [PHP8.1が出たのでmyclabs/php-enumから列挙型(Enum)に置き換えが出来るか試してみた](https://zenn.dev/naopusyu/articles/3721b99e0e30cd) * 未だに完全な置き換えは難しい模様 * Fibersを使ったライブラリなどが追加されたか * Swooleとの関係 * [PHP Fibers, the New Controversial PHP 8.1 Feature Not For You !](https://phpmagazine.net/2021/03/php-fibers-new-php-8-1-feature.html) * 8.1.1 リリース * https://www.php.net/ChangeLog-8.php#8.1.1 #### [7月開催:「PHPerの今とその先を語り合うフォーラム2021」](https://hackmd.io/qGDsV7JhQ1-9N8PVuzLZdg) * 概要 * PHPの言語特性 * Web開発で適している理由 * PHPの強みや弱み * PHPerのキャリア * PHPの歴史やアップデート内容の振り返り * 人気のIDEやFW * 今後のWeb開発でのPHPの立ち位置 * フロントエンドとバックエンドの切り分け * SPA * おすすめポイント * PHPについての一通りのおさらいができる * PHPの歴史などは知らないことが多かったため、我々がいかに優れたオープンソースを利用できているのかを実感できた * Web開発にてPHPを選定している理由を考えるきっかけになる * 対象のメインテーマの1年間のアップデート内容 * PHP 8.1 がリリース * PHP Foundation の話 * Nikita さんの話 #### [6月開催:「PHPUnit について語り合う」](https://hackmd.io/Wgd1DIRbQ0yruglVK5Ch2A?view) * 概要 * PHPer's NEWS * [PHPカンファレンス沖縄2021【参加レポート】](https://tech-blog.rakus.co.jp/entry/20210601/it-event) * PHPUnitアサーションメソッドの紹介 * おすすめポイント * アサーションは多種多様 * それぞれの使い方や機能を調べてみると面白い * 補足情報 * [PHPUnit 10 での Attribute 活用状況](https://github.com/sebastianbergmann/phpunit/issues/4502) #### [5月開催:「PHPDocについて語り合う」](https://hackmd.io/VkWCZxQbT5yL8iO3t6TegA?view) * 概要 * PHPer's NEWS * [PHPの公式Gitサーバーにハッキング被害--バックドアを仕掛けるコードが見つかる](https://japan.zdnet.com/article/35168549/) * PHPDocとはなにか * PHPDocの基本的な使い方について * おすすめポイント * 記述ルールは決まっていない * 言語仕様以外で型や配列を指定できる貴重なツール * 補足情報 * [PSR-5](https://www.php-fig.org/psr/)でルールを統一しようとしたこともあるがその後動きなし #### [4月開催:「PHP標準コーディングルール(PSR)について語り合う」](https://hackmd.io/@E6hhS-xhQIqrpKokpl_yQQ/SyT9ePHru?view) * 概要 * PHP標準のコーディング勧告集であるPSRについて * PSR の策定プロセス * どのようなルールがあるのか * 活用しているOSSなど * おすすめポイント * PSRが標準ルールのような風潮があるが正確には異なる * 開発者がお互いの利益のために相互に話し合って策定された共通認識 * 補足情報 * 21.Internationalization がDraftで登録されていた #### [1月開催:「2020年のPHP/Laravel振り返り+2021年」](https://hackmd.io/@hrxVDayfRGeTR-1JBV3QLA/H1dA4TGku?view) (振り返りって、12月に行うものでは...)

    Import from clipboard

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lost their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template is not available.


    Upgrade

    All
    • All
    • Team
    No template found.

    Create custom template


    Upgrade

    Delete template

    Do you really want to delete this template?

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in via Google

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Tutorials

    Book Mode Tutorial

    Slide Mode Tutorial

    YAML Metadata

    Contacts

    Facebook

    Twitter

    Feedback

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions

    Versions and GitHub Sync

    Sign in to link this note to GitHub Learn more
    This note is not linked with GitHub Learn more
     
    Add badge Pull Push GitHub Link Settings
    Upgrade now

    Version named by    

    More Less
    • Edit
    • Delete

    Note content is identical to the latest version.
    Compare with
      Choose a version
      No search result
      Version not found

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub

        Please sign in to GitHub and install the HackMD app on your GitHub repo. Learn more

         Sign in to GitHub

        HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Available push count

        Upgrade

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Upgrade

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully