並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 454件

新着順 人気順

php8の検索結果1 - 40 件 / 454件

  • 予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHPerKaigi 2022

    PHPerKaigi 2022 2022/04/10 10:40〜 Track A レギュラートーク(40分) PHP はバージョンを追う毎に型宣言、例外、表明、列挙型などの機能が大幅に強化され、堅牢なコードを書くための機能が充実してきました。それらの機能はどう使うと効果的なのでしょうか。 本講演では PHP 8.1 をベースにして、誤りを想定してチェックするのではなく、そもそも誤りにくい設計とはどのようなものか、つまり「予防」の観点を軸足に、堅牢なコードを導くための様々な設計のヒントをご紹介します。 Agenda - 型宣言 - 列挙型 - ドメインモデリング - 不変性と等価性 - 完全性 - レイヤーと責務

      予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHPerKaigi 2022
    • システム開発でよくある「ごん、お前だったのか」現象と依存関係、そして汎用性の罠の話 | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]

      株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。 マネジメント要求定義教訓ごんおま現象依存関係ツリー思考法カオスエンジニアリングフェイルファスト技術的負債 こんにちは、羽山です。 昔話には生きる上での数多くの教訓が込められています。今回は ごんぎつね からシステム設計・開発について考えてみましょう。 ごんぎつねの話はみなさんもご存じの通り、いたずらを悔いたごんぎつねが人知れず兵十という青年に贈り物を届けるも最後まで気づかれないまま火縄銃で撃たれてしまい、最後に「ごん、お前だったのか」となる話です。 さて、 達人プログラマー という書籍には 契約による設計(Design by Contract) という考え方が解説されています。 メソッドを契約として、 要求された以上のことも以下のことも行わない という考え方

        システム開発でよくある「ごん、お前だったのか」現象と依存関係、そして汎用性の罠の話 | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]
      • P++: 静的型付けをめざすPHP

        PHP: pplusplus:faq PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる。P++はPHPとの下位互換性を削りながら除々にPHPを静的型付け言語にする試みだ。 PHP開発者の中には2つの流派がある。PHPの源流であり現在の形である動的型付け言語としてのPHPを良しとする流派と、PHPをより強い静的型付け言語へと発展させたい流派だ。良い悪いの問題ではない。どちらの流派も正当な理由がある。しかし、ゆるふわな動的型付け言語とガチガチの静的片付け言語は同じ一つの言語として同居できない。 そこで、コードネームP++として、PHPを静的型付け言語に発展させる新しい言語の開発が提案された。P++はforkではなく、PHPと同じコードベースを共有する。PHP 8のバイナリはPHPとP++を同時に実装する。言語の切り替えは何らかの宣言によって指定する。 P++は

        • プログラミング言語へのMicrosoftの影響力がヤバい - きしだのHatena

          Tiobe indexを眺めながら、C#とVBが入っていてMicrosoftは強いなーと思ったのだけど、よくみると他の言語もMicrosoftの影響力すごいのではとなったので調べてみた。 https://www.tiobe.com/tiobe-index/ Python 例えば1位のPythonにMicrosoftはかなり力をいれている。象徴的なのが、Pythonのオリジナル開発者の入社 C/C++ Windows上でのC/C++コンパイラではMS C/C++が圧倒的シェアであるし、C++の標準化団体にMicrosoftはGold Memberとして参加している。 https://isocpp.org/about Java 4位のJavaに関してもかなりリソースは割いているわけですが、全体の影響度としてそこまで大きくはないですね。 昨日のブログにも書いたようにOpenJDKビルドを出してい

            プログラミング言語へのMicrosoftの影響力がヤバい - きしだのHatena
          • Home | DBML

            Intro​ DBML (Database Markup Language) is an open-source DSL language designed to define and document database schemas and structures. It is designed to be simple, consistent and highly-readable. It also comes with command-line tool and open-source module to help you convert between DBML and SQL. Table users { id integer username varchar role varchar created_at timestamp } Table posts { id integer

              Home | DBML
            • Udemyで今年最大のブラックフライデー&サイバーセール開催! 今おすすめのトピック8選 - はてなニュース

              Webサイトの作り方から、最新のAIの構築まで数多くの講座を学ぶことができる、オンライン学習プラットフォーム「Udemy」が、今年最大のセールを開催します! 対象となる講座は、プログラミングの基礎からクラウドサービスの実践技法、メタバースの構築にAIに必要な数学理論まで多岐にわたります。それらが1,200円から購入可能となるので、お目当ての講座の購入を迷っていた方にはチャンス到来です。 セール期間は、ブラックフライデーセールが2022年11月18日(金)~11月25日(金)、サイバーセールが11月27日(日)~11月28日(月)。学びたいコトはいろいろあるけれど、期間内に選ぶのがちょっと大変……という方に向け、定番トピックのベストセラー講座から専門的で少しニッチな新着講座まで8つのトピック別におすすめの講座を紹介しますので、ぜひ購入の際の参考にしてください。 ※この記事は、株式会社ベネッセ

                Udemyで今年最大のブラックフライデー&サイバーセール開催! 今おすすめのトピック8選 - はてなニュース
              • 完全未経験が半年で個人サービスをリリースした話 - Qiita

                はじめに この度、転職とスキル向上を目的に個人サービス(Football League)をリリースしました。 ITに関する学習は約1年ほど、その内の半年でサービスの開発をしました! まだまだ修正箇所はあるものの、ひとまず形にはなったのでサービスの使用技術や開発過程を共有したいと思います。 私自身、独学で学習してきたのでそういった方々にとって少しでも参考になれば幸いです。 ご報告 現在権利関係について、本サイトで利用している外部APIの提供者様にお問い合わせしているため、メンテナンス状態とさせて頂いております。 ・メンテナンス時間 2024/01/18 15:45〜未定 自己紹介 商業高校卒(サッカー部⚽️) 25歳 青森住み🍏 職業はトマト農家です🍅 どのようなサービスか 本サービスは、欧州5大リーグのサッカーの試合結果やチーム情報などを閲覧することができるWebサイトです。 ただ情報

                  完全未経験が半年で個人サービスをリリースした話 - Qiita
                • Ubuntu 22.04 LTS サーバ構築手順書

                  0 issue "letsencrypt.org" 0 issuewild "letsencrypt.org" 0 iodef "mailto:yourmail@example.jp" §OS再インストール さくらVPSのコントロールパネルから、OSを再インストールするサーバを選ぶ。 www99999ui.vs.sakura.ne.jp §OSのインストール操作 Ubuntu 22.04 LTS を選ぶ。 OSインストール時のパケットフィルタ(ポート制限)を無効にして、ファイアウォールは手動で設定することにする。 初期ユーザのパスワードに使える文字が制限されているので、ここでは簡単なパスワードにしておき、後ですぐに複雑なパスワードに変更する。 公開鍵認証できるように公開鍵を登録しておく。 §秘密鍵と公開鍵の作成 クライアントマシン側で生成した公開鍵を ~/.ssh/authorized_k

                    Ubuntu 22.04 LTS サーバ構築手順書
                  • 社内で実施している「10分勉強会」のご紹介

                    マナリンクCTOの名人です。 2022年3月頃から社内で実施している「10分勉強会」という取り組みと、実際の内容についてざっくり紹介していきます。 10分勉強会の目的 10分勉強会の目的は以下のとおりです。 すぐに実務で使えるかは分からないけど、知っておいて損はないことを先に学ぶ機会を作る 実務にて学んだことで、他のメンバーにも知ってほしいと思ったことを共有する機会を作る 前者については、たとえば「新しいバージョンのPHPについて調べてみた」といった、すぐには役立たないがいずれ使うであろう知識が挙げられます。後者については、たとえば「ある施策の実装をきっかけにCSSの◯◯プロパティについて学びなおした」といった例が挙げられます。 (ちょっとあまり上手な図解ではない気がしますが)学習機会の必要性について図解してみました。 エンジニアがある施策Aを実装するには、最低限これさえ分かっていたら実装

                      社内で実施している「10分勉強会」のご紹介
                    • PHP: PHP 8.0.0 Release Announcement

                      Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

                        PHP: PHP 8.0.0 Release Announcement
                      • これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)

                        これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと Webアプリケーション開発言語として広く使われるPHP。黎明期から浸透していくまでの過程、そして、これから先もPHPを活用していくために必要なこと、をエキスパートの廣川類さんに聞きました。 本記事は2020年3月に実施した遠隔取材をもとに構成しています。 1995年の公開以降、PHPは多くの企業、サービスで採用され、エコシステムが拡大してきました。言語の歴史に比例するように、さまざまなサービスのなかで積み重なってきたPHPのシステムを、いかにして持続/発展可能なものとするか。おそらく、多くのPHPユーザが感じる疑問をエキスパートにぶつけます。 今回お話を伺った廣川類( ひろかわ・るい )さんは、本業は制御関連のエンジニアであり、PHPへの関わりは、「あくまで個人の活動」と表現します。しかし

                          これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)
                        • P++: 銀河に平和をもたらすための奇策と決着 - Qiita

                          PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる というキャッチーな紹介をするP++: 静的型付けをめざすPHPという記事がそれなりに話題になり、このニュースは目覚しく革新的な内容で、多くのひとの目を引き付けました。 これは早まった理解であり、ほとんど誤報と言ってもいい内容でした。2019年8月15日には提案者本人も、少くとも「P++」の計画を短期的に実現するととは非現実的であり時期尚早であることを認めています。 この記事では、PHP開発の現状、なぜ野心的なP++計画が提案され、事実上撤回されたかの経緯について紹介します。 [中立性のための表示] この記事の著者@tadsanはPHPの静的解析を強く推進する立場です。 PHPゆるふわCI入門 PHP型検査・夢と理想と現実) 三行で要約 PHPはバージョンを経るごとに「歴史的経緯」による負債が削ぎ落されてきた

                            P++: 銀河に平和をもたらすための奇策と決着 - Qiita
                          • Pythonが速度改善に本気出すと聞いたので恒例のたらい回しベンチをとってみたら、RubyがYJITですごく速くなっていて驚いた話 - Smalltalkのtは小文字です

                            2022-09-09改訂: gcc バージョンが古すぎたのと、C が内部計測でなかった点を改め計測しなおしました。結果、Rust は C より速くはなくなりました。紛らわしいことで、ごめんなさい。また、gcc のバージョンアップに伴い、Python および Ruby についてはビルドと計測をしなおしたので、これらも少し速い値に変わっています。この点もどうぞあしからず。 2022-09-10追記:ご要望のあった Python numba.njit 使用時と Go の結果を追加しました。PHP は JIT 有効化が面倒だったので断念しました^^; 2022-09-10追記2:C の計測で clock() を使うのはフェアではないという指摘がありましたので、念のため clock_gettime() を使用したコードに差し替えました。結果に大きな差はありません。 2022-09-10追記3:PHP

                              Pythonが速度改善に本気出すと聞いたので恒例のたらい回しベンチをとってみたら、RubyがYJITですごく速くなっていて驚いた話 - Smalltalkのtは小文字です
                            • 【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita

                              結果は順にtrue、true、falseです。 これがPHP7までの非厳密な比較(等価)演算子だったわけですが、まあおかしいよねってことで、この挙動がPHP8.0で変更になることになりました。 よもや今さら基本中の基本である比較演算子の動作を弄ってくるとは思わなかったぞ。 以下はSaner string to number comparisonsの日本語訳です。 PHP RFC: Saner string to number comparisons Introduction ==やその他の非厳密な比較演算子を用いた文字列と数値の比較は、現在は、文字列を数値にキャストし、その後整数か浮動小数の比較を行っています。 この結果、多数の不可解な結果が得られますが、中でも注目すべきは0 == "foobar"がtrueになることです。 このRFCでは、文字列が実際に数値型文字列である場合にのみ数値型

                                【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita
                              • ブラックジャックの開発に時間をかけてみたら、報酬として開発スキルがレベルアップした。 - Qiita

                                ♣︎. はじめに コンソール画面で操作するブラックジャックゲームを、PHPで作りました。その個人開発の過程を記事にします。 操作した時のコンソール画面はこんな感じです。 (テキストだとこんな感じです) root@9444efa94780:/var/www/html# php Main.php ブラックジャックの設定をします。 プレイヤーの人数を入力してください。(1〜3) 🙋‍ 1 プレイヤー1名でゲームを開始します。 あなたの持っているチップは100ドルです。 ベットする額を入力してください。(1〜1000ドル) 💲 10 10ドルをベットしました。 ブラックジャックを開始します。 あなたの引いたカードはハートの6です。 あなたの引いたカードはスペードのQです。 ディーラーの引いたカードはスペードの10です。 ディーラーの引いた2枚目のカードはわかりません。 あなたの現在の得点は16

                                  ブラックジャックの開発に時間をかけてみたら、報酬として開発スキルがレベルアップした。 - Qiita
                                • 【PHP8.1】PHPで簡単に非同期処理を書けるようになる - Qiita

                                  PHPは長きにわたり同期的、すなわち、あらゆる処理を上から順に実行していくというスタイルを取ってきました。 しかしたとえば、複数のURLからデータを取ってきて結果をまとめたいといった場合、時間のかかるHTTPリクエストは同時に投げたいですよね。 この用途にはGuzzleというライブラリが存在し、これを使えば同時にリクエストを投げられます。 しかし、ではHTTPアクセスとDBアクセスを同時にやりたい場合は? 時間のかかる計算を裏でやりたい場合は? などと考え始めると、こういった個別のライブラリでは対処しきれません。 ということで汎用的な非同期処理をPHPで書けるようにするRFCが提出されました。 PHP RFC: Fibers Introduction 人類史上ほぼ全ての期間において、人々はPHPを同期的なコードとしてのみ書いてきました。 同期的に実行されるコードのみが存在し、そしてそれを同

                                    【PHP8.1】PHPで簡単に非同期処理を書けるようになる - Qiita
                                  • PHP の乱数実装がグダグダな話

                                    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

                                      PHP の乱数実装がグダグダな話
                                    • ハッカーがPHPの開発者になりすましてソースコードにバックドアを仕込んでいたことが判明

                                      オープンソースのプログラミング言語であるPHPの開発者らが使用していたGitサーバーに何者かが侵入し、PHPのソースコードにバックドアをしかけていたことが判明しました。ハッカーは悪意のあるコミットをプッシュする際、PHPの開発者であるラスマス・ラードフ氏らになりすましていました。 php.internals: Changes to Git commit workflow https://news-web.php.net/php.internals/113838 PHP's Git server hacked to add backdoors to PHP source code https://www.bleepingcomputer.com/news/security/phps-git-server-hacked-to-add-backdoors-to-php-source-code/

                                        ハッカーがPHPの開発者になりすましてソースコードにバックドアを仕込んでいたことが判明
                                      • PHPの改善 !== PHPのバージョンアップ | PR TIMES 開発者ブログ

                                        <? 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);

                                          PHPの改善 !== PHPのバージョンアップ | PR TIMES 開発者ブログ
                                        • 【PHP8.1】PHP8.1の新機能 - Qiita

                                          PHP8.2 / PHP8.1 / PHP8.0 / PHP7.4 2021/11/26にリリースされました 2021/07/20、PHP8.1がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2021/11/25にPHP8.1.0がリリースされる予定です。 というわけでPHP8.1で実装されるRFCを見てみましょう。 RFC Fibers 賛成50反対14で受理。 Fiberです。 PHPで非同期コードを書けるようになります。 $fiber = new Fiber(function (): void { $value = Fiber::suspend('fiber'); echo "レジュームした。$value: ", $value, "\n"; }); $value = $fiber

                                            【PHP8.1】PHP8.1の新機能 - Qiita
                                          • 達人出版会

                                            探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 R/RStudioでやさしく学ぶプログラミングとデータ分析 掌田津耶乃 データサイエンティストのための特徴量エンジニアリング Soledad Galli(著), 松田晃一(訳) 実践力をアップする Pythonによるアルゴリズムの教科書 クジラ飛行机 スッキリわかるサーブレット&JSP入門 第4版 国本 大悟(著), 株式会社フレアリンク(監修) 徹底攻略 基本情報技術者教科書 令和6年度 株式会社わくわくスタディワール

                                              達人出版会
                                            • PHPからJavaScriptにデータを受け渡すときに考えること - Qiita

                                              PHPのstringは任意のバイト列を扱えますが、JavaScript/JSONはUnicodeで扱える文字しか扱えません PHPのint / floatはプラットフォーム依存ですが、JavaScriptのnumberは整数と小数を型レベルで区別しません JSONのarrayに対応する型はPHPのarrayのうちリストであるものです PHPは配列(リスト)と連想配列を型レベルで区別せず、どちらもarrayです リストはキーが0からの抜けがない連番になっている要素が0個以上の配列です array_is_list()関数で連想配列とリストを判別できます array_values()で連想配列をリストに変換できます array_filter()の結果はフィルタされたキーがスキップされるのでリストではありませんが、結果をarray_values()に通すことでリストにできます JsonSerial

                                                PHPからJavaScriptにデータを受け渡すときに考えること - Qiita
                                              • 国産のWikiソフト「PukiWiki」が2年ぶりにバージョンアップ、「PHP 8.0/8.1」に対応/EUC-JP版をUTF-8へ変換するツールも用意

                                                  国産のWikiソフト「PukiWiki」が2年ぶりにバージョンアップ、「PHP 8.0/8.1」に対応/EUC-JP版をUTF-8へ変換するツールも用意
                                                • PHP7から定数配列がOPcacheに乗るので巨大配列が使い放題という話 - hnwの日記

                                                  PHP 7.0のリリースから約5年が経過し、そろそろPHP 8.0のリリースも見えてきました。人によっては使い始めて5年目になるはずのPHP 7.xですが、いまだに新しい発見があったりして面白いですね。 本稿ではPHP 7.0から入った定数配列に関する性能改善について紹介します。 PHP 5時代は配列の組み立てコストが大きかった プログラミング上のテクニックとして、辞書データを連想配列としてプログラム中に記述し、これを必要に応じて使うというものがあります。たとえば次のコード例を見てみましょう。このような連想配列を持っておけば、プログラム中で国名コードをを扱う際に実在するかをチェックしたり、国名の日本語表記に変換したりといった処理ができるわけです。 <?php $country_name = [ 'jp' => '日本', 'us' => 'アメリカ合衆国', 'ru' => 'ロシア連邦'

                                                    PHP7から定数配列がOPcacheに乗るので巨大配列が使い放題という話 - hnwの日記
                                                  • 【PHP8.0】PHPにヌルセーフ演算子が導入される - Qiita

                                                    $user = null; echo $user->address->country ?? ''; PHPのプロパティは元よりnull安全なので、存在しないプロパティだろうがnullだろうがプリミティブ型だろうがいきなりプロパティを取り出せます。 取れない場合はE_NOTICEが発生しますが、??を使えば黙殺できます。 しかしメソッドはだめです。 echo $user->getAddress()->getCountry() ?? ''; // Fatal error: Call to a member function getAddress() // 1 if (method_exists($user, 'getAddress')) { if (method_exists($user->getAddress(), 'getCountry')) { echo $user->getAddres

                                                      【PHP8.0】PHPにヌルセーフ演算子が導入される - Qiita
                                                    • 【PHP8.2】PHP8.2の新機能 - Qiita

                                                      PHP8.3 / PHP8.2 / PHP8.1 / PHP8.0 2022/07/19、PHP8.2がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2022/11/24にPHP8.2.0がリリースされる予定です。 というわけでPHP8.2で実装されるRFCを見てみましょう。 RFC Disjunctive Normal Form Types 賛成25、反対1で受理。 選言標準形です。 UNION型と交差型を同時に使えるようになります。 思う存分型パズルで遊べますね。 // A型、もしくはB型かつC型、もしくはint function hoge( A | (B & C) | int $param){}

                                                        【PHP8.2】PHP8.2の新機能 - Qiita
                                                      • Slim Framework と Docker を使って本格的にアプリを作ってみよう|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

                                                        Slim Framework と Docker を使って本格的にアプリを作ってみよう はじめに Web アプリケーションの開発をするにあたっては勉強しなければならないことは多く、どう勉強すれば良いかはなかなか難しい問題です。初心者向けの解説は比較的たくさんあるのでとりあえずやってみるくらいは何とかなるものの、実戦的な開発がどうなっているかという総合的な話は実務を経験しないとわからないことが多いことでしょう。 ということで、本記事では最近流行の Docker と、そこそこ名前は見かける PHP のマイクロフレームワークの Slim Framework を使って実戦的な Web アプリの開発をしてみる(開発環境を作ってみる)こととします。実装的には、ドメイン実装としてユーザー登録、ログイン、ユーザー情報取得の3つのAPIを実装するところまでを取り扱います。また、静的解析を最大限活用してユニット

                                                          Slim Framework と Docker を使って本格的にアプリを作ってみよう|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
                                                        • level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog

                                                          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

                                                            level=0 から始める PHPStan(Larastan) 導入ガイド - Shin x Blog
                                                          • 【PHP8.0】PHP8.0の新機能 - Qiita

                                                            PHP8.2 / PHP8.1 / PHP8.0 / PHP7.4 2020/11/26に リリースされました 。 2020/08/04にPHP8.0がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2020/11/26にPHP8.0がリリースされる予定です。 というわけでPHP8.0で対応することが決まったRFCを見てみましょう。 RFC JIT 賛成50反対2で受理。 PHP8の目玉、JITです。 PHPをネイティブコードにコンパイルし、さらにコンパイルした結果を次のリクエストに使い回すことができます。 速度はOpcacheがオンの状態から平均的に1.3-1.5倍程度、さらにCPUバウンドな処理なら3倍以上という劇的な高速化が見込めます。 Opcache無しからだと、1分かかっていた

                                                              【PHP8.0】PHP8.0の新機能 - Qiita
                                                            • 非公式 PHP 8.1のmbstringアップグレードガイド - てきとうなさいと。べぇたばん

                                                              PHP 8.1へのアップグレードにまつわるまとめ PHP 8.1へのアップグレードには、mbstringにまつわるマニュアルに記述されない後方互換性のない変更が含まれることがあります。そのことを周知するべく、この記事を書くことにしました。 私てきめんは、PHPカンファレンス 2022にて、「治っていくmbstring 令和時代の文字化け」というタイトルでトークしています。以下スライドも参考にしてください。 Major overhaul of mbstringについて PHP 8.1から、Major overhaul of mbstringと呼ばれる、mbstringの大規模改修の内容が反映されるようになりました。困ったことに、RFC(Request For Comments)やChangelog、マニュアルにない内容で、mbstringを多用するPHPユーザーにとてつもない困惑をもたらすこ

                                                                非公式 PHP 8.1のmbstringアップグレードガイド - てきとうなさいと。べぇたばん
                                                              • PHP: PHP 8.1.0 Release Announcement

                                                                Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

                                                                  PHP: PHP 8.1.0 Release Announcement
                                                                • モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―

                                                                  2021/12/21 PHPerKaigi petit - PHP8.1リリース祝賀会 でのトーク「モダンPHPテクニック 12選 ―PsalmとPHP 8.1で今はこんなこともできる!―」のスライドです。発表時点からごくわずかに加筆修正した部分があります。 https://phperkaigi.connpass.com/event/233022/Read less

                                                                    モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
                                                                  • ChatGPTにWordPressプラグインを要求したら数日かかる作業を5分で完了させたという報告

                                                                    チャットAI「ChatGPT」は2023年2月には月間1億ユーザーに到達したほど急速に成長しており、Googleのコーディング職の試験にパスしたり、裁判官が判決文を作成する際に使用されたりと、さまざまな事例でその精度の高さが報告されています。アメリカのテクノロジーと国家安全保障政策に携わる政策顧問でコンピュータ科学者のデビッド・ゲワーツ氏は新たに「ChatGPTがWordPressプラグインを5分で作成した」と報告しており、「魅力的で素晴らしく、恐ろしいものです」とコメントしています。 So... this... https://t.co/mzBYpCJay5— David Gewirtz (@DavidGewirtz) I asked ChatGPT to write a WordPress plugin I needed. It did, in less than 5 minutes

                                                                      ChatGPTにWordPressプラグインを要求したら数日かかる作業を5分で完了させたという報告
                                                                    • 誰でも囲碁の試合が楽しく観戦できるようになるカリキュラム

                                                                      つらつらと書いているが棋士と評価値観るだけなら1-7を飛ばして8からだけでOK。 1. ルールを覚える無料やさしい囲碁入門でルールを覚える https://yasashiigo.com/ 有料囲碁入門書籍を買って読む 2. とりあえずコンピューターと打ってみるぷよ碁(純碁ルール) https://puyogo.app/?size=7 囲碁道場(勝つ度にAIがレベルアップ、純碁ルール) https://www.simplego.net/ Go-Up(レベル選択あり。ガチャや称号などのコレクション要素があってソシャゲ好きに最適) https://go-up.online/ 碁色(危ない石は△、もうほぼ死んでる石は☓が表示されるので、初心者でも非常にわかりやすい) https://goiro.net/ 弱さぷよ碁>>>道場=Go-UP 3. 入門者から初心者へステップアップ囲碁道場やGO-UPで

                                                                        誰でも囲碁の試合が楽しく観戦できるようになるカリキュラム
                                                                      • 20年ものの巨大レガシープロダクトを PHP 8.0にアップデートした際の対策と得られた知見

                                                                        PHP Conference Japan 2022 https://fortee.jp/phpcon-2022/proposal/8f29f20e-1275-49eb-89c0-fe684e28d110

                                                                          20年ものの巨大レガシープロダクトを PHP 8.0にアップデートした際の対策と得られた知見
                                                                        • AWS App RunnerがPHP/Go/.Net/Rubyのマネージドランタイムをサポート、コードを簡単にWebアプリ化してスケーラブルに実行可能

                                                                          Amazon Web Services(AWS)は、コンテナ化したWebアプリケーションのスケーラブルな実行を簡単に行える「AWS App Runner」で、PHP/Go/.Net/Rubyのマネージドランタイムをサポートしたことを発表しました。 App Runnerはコンテナ化したWebアプリケーションを簡単にデプロイし実行できるサービスです。オートスケール、ロードバランスなどの管理は全てクラウド側に任せることができるため、ユーザーはアプリケーションの開発に集中できます。 利用するには、コンテナイメージをApp Runnerにプッシュする方法に加えて、GitHubでソースコードをプッシュするとApp Runnerがそれを検知して自動的にコンテナ化し、実行してくれる機能も備えています。 ただしこれまではPython3もしくはNode.jsで実行可能なコードにしか対応しておらず、それ以外の言

                                                                            AWS App RunnerがPHP/Go/.Net/Rubyのマネージドランタイムをサポート、コードを簡単にWebアプリ化してスケーラブルに実行可能
                                                                          • 達人出版会

                                                                            探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 デザインディレクション・ブック 橋本 陽夫 現場のプロがやさしく書いたWebサイトの分析・改善の教科書【改訂3版 GA4対応】 小川 卓 解釈可能なAI Ajay Thampi(著), 松田晃一(翻訳) PowerPoint 目指せ達人 基本&活用術 Office 2021 & Microsoft 365対応 PowerPoint基本&活用術編集部 ランサムウェア対策 実践ガイド 田中啓介, 山重徹 TODによるサステナ

                                                                              達人出版会
                                                                            • Go言語で書かれたPHPアプリケーションサーバ「FrankenPHP 1.0」がリリース

                                                                              FrankenPHP 1.0には、Symphony、Laravel、WordPressなどのネイティブサポートが含まれるほか、Caddyを搭載したプロダクショングレードのPHPサーバであり、PHPアプリのスタンドアロンで実行可能なバイナリとしてのパッケージ化が可能となっている。 さらに、PHP-FPMとNgnixを個別に実行する必要がなく、1つのサービスのみでPHPサーバを提供できるようになるとともに、PHP 8.2以降のほとんどのPHP機能拡張、およびすべてのCaddyモジュールと互換性がある。 ほかにも、アプリケーション起動してメモリに保持するワーカーモード、JavaScriptイベントとしてWebブラウザへ送信されるリアルタイムイベント、ZstandardおよびGzip圧縮、構造化されたログ、Prometheusメトリクスを使用したCaddyの監視、HTTPS・HTTP/2・HTTP

                                                                                Go言語で書かれたPHPアプリケーションサーバ「FrankenPHP 1.0」がリリース
                                                                              • ニコニコ動画のコメントサーバーを引っ越した時の話 - dwango on GitHub

                                                                                こんにちは。ニコニコ動画開発の多胡です。 今回は PHPerKaigi2023 向けの記事として、2021年に実施したニコニコ動画のコメントサーバーをお引越しした時のことを書いてみたいと思います。 文中の 5 つのフレーズをチャレンジトークンとしてみました。ぜひ探してみてください! (※ 記事の見出しにの横についている「#」はチャレンジトークンではありません。チャレンジトークンは文中に配置されています。紛らわしくてすみません!) 背景 実はニコニコ動画の #コメントサーバーを引っ越した のはこの時が二度目でした。 一度目は2014年から2016年にかけてのプロジェクトでファイルベースのシステムからの引っ越しでした。このファイルベースのシステムは、ニコニコ動画生誕当時から利用されており、当時のコメント参照や投稿にはすでに耐えられない状態になっていました。 そこで、このファイルベースのシステム

                                                                                  ニコニコ動画のコメントサーバーを引っ越した時の話 - dwango on GitHub
                                                                                • 10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ

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

                                                                                    10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ