並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 22 件 / 22件

新着順 人気順

オートローダーの検索結果1 - 22 件 / 22件

  • ウェブサービスをゼロから作って成功したこと、失敗したこと - id:k-z-h

    php, 雑記いつもなら寝ている時間なのだけれど、なぜか睡魔がやってこないので過去の思い出をまとめてみる。去年の2月ごろ、新規案件のウェブサービスに開発メンバーとしてアサインされた。作るべきものが大量にあったため、4チーム(工期中多少増減したが)に分けてドメインごとに作業分担をした。そのうち、ウェブアプリケーション本体(フロント、API、マネージツール)を担当するチームのサブリーダーが自分の役割だった。そのプロジェクトは去年の末に一旦の区切りを迎え、自分はそこで退職し、新たな環境に身を置くことにした。それから丸4ヶ月経って、自分が書いたコードと新しい環境で書かれていたコードを見比べて、思うところが多々ある。それらを文章としてまとめたいと思う。 失敗したこと簡単な骨組みを作ったあと、デプロイの仕組みを作った。php には phar という仕組みがある。これは jar/war のようにウェブサ

    • テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ

      ※2017/05/29現在Repositoryの章までしか聞けていません。聞いている際に浮かんだインスピレーションが揮発しないよう永続化する為に書いた記事です。 php-genba.shin1x1.com まさか日本語でこの内容を聞けるコンテンツがあるとは思わなかったです。 これは英語をマスターすれば Sound of Symfony The Laravel Podcast Ruby on Rails Podcast JavaScript Air devchat.tv などのPodcastからより多くの興奮を得られる事を意味します。 プログラミング経験3年、細かい修正ばかりで設計レベルの経験値が全くない自分ですが、各章について以前から個人的に思っていた事、お三方の知見からインスピレーションを得た内容を書き残します。 1. DI 「依存性の注入(Dependency Injection)」と

        テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ
      • フラットなPHPからSilexへ - ぷぎがぽぎ

        追記 DB接続時にcharset=utf8を指定 bindValueで暗黙の型変換されないように変更 Pimpleをサービスロケータとして使う場合の注意点を追加 テンプレートとしてフラットなPHPからTwigで書いた場合を追加 前提 スクリプト、ファイル、DBの文字コードはすべてUTF-8で統一です。 また、最初に以下のMySQLのテーブルがあることを前提として記事を書いています。 Database: MySQL user: myuser password: mypassword CREATE TABLE `blog_db`.`post` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `body` text NOT NULL, `date` date NOT NULL, PRI

          フラットなPHPからSilexへ - ぷぎがぽぎ
        • PHPStanで始めるPHPのための静的解析 #phperkaigi

          こんにちは。最近メルペイに異動になった @hiraku です。 2018年3月10日(土)に、PHPerKaigi 2018というイベントで登壇してきました。「PHPStanで始める継続的静的解析」ということで、メルカリで使用しているPHPStanというツールについて解説しました。 phperkaigi.jp 発表内容を短くまとめると メルカリではPHPStanというツールをCIフローに組み込み、PHPコードの静的解析を行ってコードの信頼性向上に努めています。 PHPStanはautoloadファイルを解釈し、一部のコードを実行することで解析の高速化を行っており、よくできています。 とはいえ、PHPに対して可能な解析に限界はあるので、テストも合わせて行っていきましょう。 大事なのは、品質向上のアプローチが用意され、心配せずにリリースできることです。 autoloadを認識するということ ス

            PHPStanで始めるPHPのための静的解析 #phperkaigi
          • 2019年のWordPress案件には必須級、主流スターターテーマを全部試してまとめてみた | バンクーバーのうぇぶ屋

            さて、最近はWeb案件からは少し遠のいていたセナ夫ですが、今年に入ってからたまたまWordPressでサイト制作する案件にジョイーンする事になり、まぁ僕が入る案件といえば大体メディア系ばっかりなんですが、その時に「Understrap」というWordPressのスターターテーマを使う事になったわけですが、恥ずかしながら聞いた事がなく、色々錯誤していたらまぁまぁ使いやすかったわけですね。 ブランクもそれなりにあるし、今年はメディア系の案件にも結構どっぷり浸かりそうな雰囲気もあるので、若手WordPressエンジニアな皆様の話について行けるようにと、今回スターターテーマ系を一度全部まとめておこうというのが目的で記事を書いてみます。 ちなみに「日本でWeb制作してました、WordPressも使えます」みたいな状態で海外就職を目指す人も多いですが(大抵スキル不足と見られる場合が多いので、専門かBo

              2019年のWordPress案件には必須級、主流スターターテーマを全部試してまとめてみた | バンクーバーのうぇぶ屋
            • PHP - The Wrong Way

              概要 PHPプログラミングの世界では、ある一定のトレンドが「モダンPHP」として、一部の人によって (彼らの書籍やウェブサイト上で) 強烈に広められ、他のアプローチは、遅れていたり、愚かだったり、あるいは単に間違いだとみなされて、眉をひそめられています。 それらの人々は、彼らの物事のやり方を他人に追従させようと、飽くなき努力を続けているように見えます。 このウェブサイトは、PHP プログラミングに関する現実的な見解を示すために作られました。流行りのトレンド、理論、学問的な教示ではなく、経験と実践の帰着を書き記した視点です。 ウェブサイト PHP - The Wrong Way は生きたドキュメントですので、より多くの情報が明らかになるにしたがって更新され続けます。 お気軽にコントリビュートしてください。 翻訳 ドイツ語 英語 フランス語 日本語 インドネシア語 トルコ語 ペルシャ語 ポルト

              • PHPのコーディング規約 PSR-0、PSR-1、PSR-2、PSR-3とは

                こんにちは、@9ensanです。 PHPには、今まで様々なコーディング規約があり、例えば WordPress Pear Zend CakePHP Symfony CodeIgniter などなどです。 ここまで、それぞれでコーディング規約があり統一が取られておらずまた、その為に独自のコーディング規約を作る人もいました。 これに対して、「PHP-FIG」という有名なPHPのプロジェクトが参加しているグループが、共通点をルール化して、新しいコーディング規約を作成しています。 それが「PSR-0、PSR-1、PSR-2、PSR-3」です。 これからのPHPのコーディング規約はPSRに従うのが一番だと思います。既に様々な有名フレームワークもPSRに従うように修正が加えられています。 PSRの日本語化リンク PSR-0、1、2は日本語化してくれている人がいるので読んでみるのが一番です。 PSR-0

                  PHPのコーディング規約 PSR-0、PSR-1、PSR-2、PSR-3とは
                • PHP アプリケーションのトレース計装ではじめる OpenTelemetry 入門 - Shin x Blog

                  OpenTelemetry を利用して PHP アプリケーションのテレメトリデータを計装する方法をまとめました。 本エントリのコードは下記で公開しています。 github.com OpenTelemetry とは 用語 PHP アプリケーションのマニュアル計装(手動計装) 構成 OTel Collector Jaeger 動作環境 必要なパッケージ PHP コード 設定 実行 PHP アプリケーションのゼロコード計装(自動計装) 必要な拡張とパッケージ 設定 PHP コード 実行 さいごに 参照 OpenTelemetry とは opentelemetry.io OpenTelemetry は、サービスやアプリケーションのテレメトリーデータ(トレース、メトリクス、ログなど)を計装、生成、収集、送信するためのオブザーバビリティフレームワークです。ベンダーニュートラルな OSS であり、CNC

                    PHP アプリケーションのトレース計装ではじめる OpenTelemetry 入門 - Shin x Blog
                  • [PHP]ComposerのCLIで利用できるコマンドの説明

                    こんにちは、@9ensanです。 PHPの依存管理ツールの「Composer」を使おうと思うとコマンドを覚えておいた方がいいと思うのでちょっと調べてみました。 以下解説になります。 全てのコマンドに有効なオプション –verbose(-v):詳細メッセージを表示させる。 –help(-h):ヘルプを表示する。 –quiet(-q):メッセージを表示しない。 –no-interaction(-n):対話型のメッセージを表示しない。 –working-dir(-d):作業フォルダを指定する –profile:メモリ使用量と実行時間を表示する。 –ansi:ANSIカラーでメッセージを出力する。 –no-ansi:ANSIカラーを使用せずにメッセージを出力する。 –version(-V):バージョンを表示する init composer.jsonを作成するコマンド、手で書くよりは少し簡単に作成で

                      [PHP]ComposerのCLIで利用できるコマンドの説明
                    • Zend Frameworkを速くするよ

                      かなり前の話題ですが、PHPのフレームワークのパフォーマンス比較記事がありました。 これを見てわかる通り、Zend Frameworkは結構遅いフレームワークです。昔、リリースされたばかりで機能がショボかったころは速いと言われたりもしましたが、Zend_Applicationが追加されてからは多機能化を突き進んでいて、それに伴って遅くなっています。 そもそもZFのセールスポイントって、「疎結合」「高い拡張性」「品質の高さ」などで、パフォーマンスは優先されていないような気もします。 でも最低限の速さは欲しいので、パフォーマンスチューニングをやってみます。 基本 公式ドキュメントの「Zend Frameworkパフォーマンスガイド」を実践するのがすべての基本になります。 あとはPHPの基本的なパフォーマンスチューニングをやることですかね。とりあえずAPCは導入して、Xdebugで測定して、遅い

                        Zend Frameworkを速くするよ
                      • WordPressによるWebアプリケーション開発

                        WordPressはCMSプラットフォームとして不動の地位を確立していますが、本書では、このWordPressをWebアプリケーションの開発フレームワークとして活用し、Webアプリケーション開発に必要な知識とテクニックについて詳しく解説しています。ユーザー管理、URLルーティング、データベース設計、再利用性を重視したプラグイン設計、メディアアップローダーを用いたファイル処理、管理画面の実装とカスタマイズ、ウィジェットの効果的な利用方法、OAuthログイン、Web APIサービスの提供、Ajax、Backbone.jsを用いたクライアントサイドの構造化など、Webアプリケーションに要求される処理の多くをWordPressで実現する方法を提示。WordPressの持つ威力と可能性を体感できる一冊です。WordPress 4.x対応。 監訳者まえがき 序文 1章 Webアプリケーションフレームワ

                          WordPressによるWebアプリケーション開発
                        • レガシーPHP改善日記 シーズン2 エピソード1 - komagataのブログ

                          初日、行ってまいりました。 流行りの環境うんぬんは単なる手段であり、"経営陣を含めたマインドセットの更新が大事"ってのはありますが、そんな話みんな読みたくないでしょ? 僕が調べた現状と、こういう風に持って行きたいという理想の環境を書き出してみました。 現状 本番環境 さくらのマネージドサーバー(FreeBSD) ステージング環境 共有開発サーバー(社内に古めのCentOS) 開発環境 共有開発サーバー(社内に古めのCentOS) ソースコード管理 svn 共有開発サーバーのコードを担当者一人が全員を代表してsvnにコミットする。バックアップ的な役割 タスク管理 社内の独自タスク管理システム デプロイ 共有開発サーバーのソースをFTPでアップする 開発マシン Windows7 コーディング規約 PEAR標準コーディング規約をカスタマイズしたもの コードレビュー なし チャット IP-Mess

                          • PHPでPC・スマホ・タブレット・携帯を判別するおすすめの方法 – RのWeb制作

                            今まさにスマートフォン時代になってきています。 PHPでPCやスマートフォン、タブレット、携帯を判別してみましょう。 ※この内容は2013年当時の方法です。 普通の判別法 $_SERVER['HTTP_USER_AGENT'] ユーザーエージェントで対応される方も多いかもしれません。 $UA = $_SERVER['HTTP_USER_AGENT']; if (ereg("iPhone|iPod|Android.*Mobile|Windows.*Phone", $UA)) { // スマートフォン }else{ } これだと追加や削除が必要なので面倒です。 良い判別法 php-mobile-detectのライブラリ(MITライセンス)を使いましょう。 更新は最新版をダウンロード→インストールするだけ! 携帯・スマホ判定 function isMobile(){ require_once('

                            • PHPの名前空間の効果的な使い方を考える

                              PHPは5.3から名前空間が導入され、名前の衝突を避けるため長いクラス名をつけることから解放されました。しかしながら、名前空間を使ったコードは、名前空間を使っていないものに比べて本当に読みやすくなっているのでしょうか? ここで例を挙げます。PHPの良質なソースコードと言えば、私はZend Framework(ZF)やSymfonyを思い浮かべるのですが、ZFのとあるクラスの冒頭を見てみましょう。 https://github.com/zendframework/zf2/blob/master/library/Zend/Mvc/View/Console/RouteNotFoundStrategy.php <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframewo

                                PHPの名前空間の効果的な使い方を考える
                              • PHP開発でComposerを使わないなんてありえない!基礎編 - Qiita

                                久方ぶりにPHPのレガシーなシステムを触りましたが、なんというか。。。 名前空間とcomposerが無いだけで、こうも大変になるのかと思いましたね というわけで、もはやデファクトスタンダードとなったcomposerを使用した開発について、その有り難みを噛み締めつつ、まとめていきたいと思います composer composerは依存性管理ツール composerは依存性管理ツールです。。。ってナンノコッチャですが、例えば以下の状況を考えてみましょう 便利そうなライブラリAを使用したいのだが、このライブラリは更に別のライブラリB, Cを必要としている。さらに、ライブラリBはライブラリD, Eを。。。 そう、ライブラリの依存性地獄です。 使用したいのはAなのに、そのために必要なライブラリがボコボコ必要になる こんなのは日常茶飯事です。 でもcomposerがあればどうでしょう。 ライブラリAが

                                  PHP開発でComposerを使わないなんてありえない!基礎編 - Qiita
                                • 自分流 Laravel 4 アプリケーションアーキテクチャ

                                  Laravel Advent Calendar 2014 の 9 日目です。 今年の Advent Calendar では、Laravel 5 リリース目前ということで、Laravel 5 の話題が多いのですが、それは他の方にお任せして、ここでは、Laravel 4 でのアプリケーション実装について書いてみます。 Laravel は自由度の高いフレームワークですので、アプリケーションも自由な構成にすることができます。ただ、この「自由さ」が故に、どういう構成が良いのかというのが悩ましい点でもあります。 このエントリでは、私が実際に構築したプロダクトをベースに構成例をご紹介します。Laravel アプリケーションを構築する上での参考になれば嬉しいです。 1. ディレクトリ構成 まずは、大枠のディレクトリ構成から。アプリケーションや開発環境用の Vagrantfile やプロビジョンファイルなど

                                  • PSR-0 を和訳してみた - hnwの日記

                                    先週の土日にPHPMatsuriに行ってきました。ナイスなイベントでしたね。その感想はまた改めて書きますが、Nate Abeleによるセッション「Practical PHP 5.3」で触れられていたPSR-0を適当に訳してみました。これはPHP5.3の名前空間とクラス名に関する標準化の試みで、少なくともZendFrameworkとsymfonyの中の人が関わっているようです。 うまく訳出できなくて苦し紛れのところもあるので、修正すべき箇所があれば教えてください。 元の文章は http://groups.google.com/group/php-standards/web/psr-0-final-proposal にあります。以下はその和訳です。 PSR-0 最終提案 以下で、オートローダーの相互利用性を確保するための必須要件について記述します。 必須要件: 名前空間とクラスの完全な名前とし

                                      PSR-0 を和訳してみた - hnwの日記
                                    • Composerの作者に会った (PHP勉強会 番外編レポート) #phpstudy #composerphp

                                      Composerやmonologの作者である@seldaekが来日するということで、2016年7月22日にPHP勉強会の番外編が開催されました。 PHP勉強会@東京〜番外編〜 みなさまお疲れ様でした! #composer #php #phpstudy #eventdots pic.twitter.com/wvKHgpDNGp — しめじ (@TAKA_0411) 2016年7月22日 動画 @seldaek の発表 発表資料はこちら: Composer in 2016 #phpstudy #eventdots pic.twitter.com/h4UeksQGvJ — Hiraku (@Hiraku) 2016年7月22日 Composerを使い込んでないとわからない内容もあったと思うので、勝手に補足解説しようと思います。 composerのエコシステムについて Composerの中央リポジ

                                        Composerの作者に会った (PHP勉強会 番外編レポート) #phpstudy #composerphp
                                      • ytake.blog | laravelアーキテクチャ再考と中規模以上のノウハウ(年末特大号)

                                        laravelアーキテクチャ再考と中規模以上のノウハウ(年末特大号) Posted: 2014-12-31 02:02 | laravel PHP全般 年末なので、今年一年laravelを個人規模からそこそこ大規模まで利用したノウハウと、 個人的なポイント等を紹介したいと思います 若干主観もありますが、実際に使った時のものを混ぜて紹介します 実務で使う方や、企業で導入しようと思ってる方にも参考になる様に頑張ります 新原さんの自分流 Laravel 4 アプリケーションアーキテクチャ も是非参考にしてみてください 規模による考え方の違い まずはlaravelはそもそも何向きなのかという事ですが、 開発規模は実際のところは問いません 高速なレスポンス等が要求される場合は、ある程度の規模でしたらPhalconがオススメですが、 お気に入りのフレームワークでしたら何でもいいでしょう! って事にした

                                        • 商用環境でも使っている Laravel 用 php-fpm イメージの Dockerfile レシピ - Qiita

                                          これは何 Laravel 用 php-fpm イメージの Dockerfile。 (多少はフォーマット変わろうとも)色んなところでずっと使いまわししそうなのでメモ。 完全に個人の秘伝のタレ化するよりは情報公開したほうが自社にとっても利益があるだろうと判断(笑) 異論は無限に受け付けるので改善点などあればコメントください。 FROM golang:1.15 as http2fcgi_build # http2fcgi のビルド RUN GO111MODULE=on go get -v -ldflags '-w -s' github.com/alash3al/http2fcgi@v1.0.0 FROM php:7.4-fpm-alpine as php_runtime # Goバイナリが実行できるようにする # https://stackoverflow.com/questions/34729

                                            商用環境でも使っている Laravel 用 php-fpm イメージの Dockerfile レシピ - Qiita
                                          • [PHP]require(require_once)するときは必ず絶対パスを使いましょう · DQNEO日記

                                            まず絶対パスで書いた場合、 require_once '/path/to/a.php'; 当たり前ですが'/path/to/a.php'というファイルがダイレクトにオープンされて読み込まれます。 何の問題ないですね。 一方、絶対じゃないパス名(ファイル名だけとか)を書いたらどうなるでしょうか? require_once 'PEAR.php' この場合、PHP実行エンジンはinclude_pathで指定されたディレクトリを順番に探索します。 もしinclude_pathが'/home/dqn/app:/home/dqn/extlib:/home/dqn/lib:/usr/share/pear'となっている場合、 PHP実行エンジンは下記のようにファイルを探索します。 /home/dqn/app/PEAR.php あるかな・・・ないぉ! /home/dqn/extlib/PEAR.php ある

                                            • Composer が PSR-4 に対応していた - ngyukiの日記

                                              Composer が PSR-4 に対応していたので試してみました。 PSR-4 - Composer PSR-0 と PSR-4 PSR-4 はオートローダーに関する規約で PSR-0 を置き換えるものです。 PSR-0 PSR-4 ざっくり PSR-0 と比べると次のような違いがあります。 クラス名に含まれるアンダースコアに特別な意味は無くなった PSR-0 ではクラス名のアンダースコアはディレクトリ区切りでした 名前空間の先頭とそれに続く一部のサブ名前空間(名前空間プレフィックス)が、任意の ベースディレクト に対応 名前空間プレフィックス 以降の名前空間は ベースディレクト 内のサブディレクトリに対応する ソースコードのリポジトリでベンダ名やパッケージ名でディレクトリを掘る必要がなくなった オートローダーの実装は例外を投げてはならない(MUST)、どのエラーのレベルも発生させてはな

                                                Composer が PSR-4 に対応していた - ngyukiの日記
                                              1