ブックマーク / qiita.com (115)

  • ソースコードの“赤ペン先生”PHP-CS-Fixerのインストールと設定 - Qiita

    PHP-CS-FixerはコマンドひとつでPHPコードを美しく整形してくれる魔法のような開発ツールだ。ソースコードのスタイルがおかしなところを指摘するだけでなく訂正までしてくれる。いわばソースコードの「赤ペン先生」だ。 特に複数人が携わる開発現場では、PHP-CS-Fixerを取り入れることで、各自のコーディングの癖を取り除き、コーディングスタイルが統一され、コードの保守性向上が期待できる。 PHP-CS-Fixerのデモ こういうやる気のないコードでも…… <?php use UnusedImportedClass; class A { /** * 適当なDocComment */ private function hoge(int $x, int $y){} private $arr = array(1,2,3,); /** * @param int $a * @param strin

    ソースコードの“赤ペン先生”PHP-CS-Fixerのインストールと設定 - Qiita
    Amigomr
    Amigomr 2020/03/27
  • PHP CS Fixer を VS Codeで動かす(macos) - Qiita

    PHP CS Fixer は、PHPのコードをいい感じで整形してくれるツール。 細かいスペースとかをコードレビューで直すのはあんまり意味ない気がするので、ツールに整形してもらって勝手に直してもらおう! (Composerでグローバルにインストールする方法にしました!) Composerをインストール ここを見てインストール https://getcomposer.org/download/ composerでコマンドをglobalインストールした時にパスが通るように設定する。 # bashの場合、多分これを ~/.bash_profile に書く export PATH="$PATH:$HOME/.composer/vendor/bin" # fish shellの場合、↓これを ~/.config/fish/config.fish に書く set -x PATH ~/.composer/

    PHP CS Fixer を VS Codeで動かす(macos) - Qiita
    Amigomr
    Amigomr 2020/03/27
  • Laravel Aspectで始めるアスペクト指向プログラミング - Qiita

    先日会社のLaravelプロジェクトLaravel Aspectを導入したのでQiitaでも紹介します。 2年前くらいにLTで紹介して、今ググると多分上位に私のスライドがでるんですが、肌感でユーザーがまだまだ少ないなーと感じているので良さを伝えたいと思います。 Laravel Aspectの前にアスペクト指向プログラミング(AOP)について簡単に解説します。 AOPとは特定の振る舞いをアスペクトという機能単位で分離して記述し、プログラムのあらゆる箇所で適応する手法です。 オブジェクト指向プログラミングだけではうまく分離できない横断的関心事を分離できるようにする補助的な役割として利用されることが多いです。 横断的関心事 トランザクションやロギングなどのプログラムのあらゆる箇所に利用されるが、単一オブジェクトやメソッドに切り出して定義するのが困難な機能を横断的関心事と呼びます。 public

    Laravel Aspectで始めるアスペクト指向プログラミング - Qiita
    Amigomr
    Amigomr 2020/03/26
  • Vim 原理主義者である私の最強にして究極の ~/.vimrc を公開する - Qiita

    この文章のターゲット この記事は、Vim 原理主義者の ~/.vimrc を公開するものです。何か特定のプラグインやキーバインドを紹介するものではありませんので、そこはご注意ください。 原理主義とは コンピュータ界隈には、時に畏れ敬われ、時にあざ笑われような"原理主義者"と呼ばれる人々が存在します。 この語について述べる前に、真逆のものをイメージしてみてください。みなさんの周りには、このような人はいませんか。 Caps Lock と Ctrl を入れ替える Mac ユーザなのに HHKB を使う ~/.bashrc にalias vim='emacs'という記述がある このような設定をしている人々は、原理主義者ではありません。原理主義者というのは、Emacs を使用していてどれほど左小指が痛くなろうと、包み込まれるような打鍵感の誘惑に負けそうになろうと、また Emacs 急先鋒であろうと、

    Vim 原理主義者である私の最強にして究極の ~/.vimrc を公開する - Qiita
    Amigomr
    Amigomr 2020/03/23
    ほとんどポエムじゃないかwww
  • Docker-composeのDockerfile内で親ディレクトリ参照したいとき - Qiita

    Help us understand the problem. What is going on with this article?

    Docker-composeのDockerfile内で親ディレクトリ参照したいとき - Qiita
    Amigomr
    Amigomr 2020/03/22
    “Docker-composeのDockerfile内で親ディレクトリ参照したいとき”
  • [Laravel 5.5] 読み込む.envファイルを環境ごとに切り替える - Qiita

    2通りの方法 方法1 サーバー環境変数APP_ENVを設定しておく。 方法2 bootstrap/app.phpで、loadEnvironmentFromメソッドで読み込む.envファイルを指定する。 どちらにしても、各環境用の.envを用意しておきましょう。 .env (ローカル用) .env.dev (開発環境用) .env.stg (ステージング環境用) .env.prod (番環境用) また以下の例は全てapacheサーバですが、nginxでも同じことができます。 [方法1] サーバー環境変数で切り替える 各環境の.htaccessで環境変数を設定しておきます。番環境なら

    [Laravel 5.5] 読み込む.envファイルを環境ごとに切り替える - Qiita
    Amigomr
    Amigomr 2020/03/22
    Apacheの設定も変えないと、読み込む.envファイルが変わらない。
  • AWS の RDS で外部アクセスを可能にする - Qiita

    1) Details で「パブリックアクセス可能」が 「はい」になっていることを確認する 2) セキュリティグループ のインバウンドで、ポート 3306 を、0.0.0.0/0 にする 3) 接続の確認 エンドポインント、ユーザー、パスワードは変更して下さい。 mysql -hiot-test.aaaa1q8npue.ap-northeast-1.rds.amazonaws.com -uuseraa -ppassword Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationWhat you can do with signing up

    AWS の RDS で外部アクセスを可能にする - Qiita
    Amigomr
    Amigomr 2020/03/22
    セキュリティグループのインバウンド設定忘れてた(検証用だから直接つなぎたかった)
  • Apacheを使ってLaravelのページを表示できない時の対応方法 - Qiita

    事象1 : ページにアクセスしたら404 Not Foundになった 原因1.1 : Apacheの設定(httpd.conf等)でAllowOverrideがAllになっていないから AllowOverrideにNoneが指定されていることでドキュメントルートとなるpublicディレクトリ配下の.htaccessの使用が許可されていないから。 対応方法 : AllowOverrideにNoneが指定されていると.htaccessの使用が禁止された状態となっているのでAllへ設定してApacheを再起動する Laravelでルーティングをしているはずが404エラー? - Qiita

    Apacheを使ってLaravelのページを表示できない時の対応方法 - Qiita
    Amigomr
    Amigomr 2020/03/22
  • Docker マルチステージビルドのユースケースと実践 - Qiita

    Docker が少し前から「マルチステージビルド」なる機能を提供していましたが、ちょっとだけ使い込んでみる機会があったので、自分なりにまとめてみました。 TL;DR 1つの Dockerfile に何個も FROM が書ける 1つの FROM から次の FROM or ファイル末尾までが1ステージ COPY --from=foo で、既出のステージや出来合いのイメージからファイルをつまみいできる RUN の成果物だけあればよいようなケースに最適 (コンパイル言語系のシステムとか) FROM の元ネタとして、既存イメージの他に既出のステージも指定できる 多様だが共通部が多いようなイメージを作るケースで DRY にできる COPY --from=foo で、既出ステージの成果物つまみい COPY --from=foo の例 次は、 jemalloc をビルドするだけの一時的なイメージを作る

    Docker マルチステージビルドのユースケースと実践 - Qiita
    Amigomr
    Amigomr 2020/03/19
  • Docker に Composer をインストールするベストプラクティス(と解説) - Qiita

    ただし multi-stage builds (マルチステージビルド) を使用するため,Docker のバージョンは >=17.05 が必須です。 以下で解説します。 メジャーな方法(Composer 公式) Composer 公式 のインストール方法を Dockerfile に記述するのが一般的かと思います。 例:PHP-FPM に Composer をインストールしたイメージを作る Dockerfile FROM php:7.3-fpm RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ && php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba380432

    Docker に Composer をインストールするベストプラクティス(と解説) - Qiita
    Amigomr
    Amigomr 2020/03/19
  • DockerFileにif文(条件分岐) - Qiita

    Dockerfile に IF文を書く まず最初にこれはするべきではないです。 Dockerfile はシンプルな記述をモットーにしている(とどこかで見た気がする)ので、 if や switch の構文など無いのです! 来の正規で用意されているコマンド一覧はこちら それでもそこをなんとか…というときの力技 Dockerfile ARG USE_SVN="1" RUN if [ "${USE_SVN}" = "1" ]; then \ echo "ここに1だったときのコマンド"; \ 例)yum install svn; \ else \ echo "ここに1じゃなかったときのコマンド"; \ fi

    DockerFileにif文(条件分岐) - Qiita
    Amigomr
    Amigomr 2020/03/19
  • ApacheでPHP-FPMを動かすなら、ProxyPassMatchではなくSetHandlerを使うのがいいらしい - Qiita

    ApacheでPHP-FPMを動かすなら、ProxyPassMatchではなくSetHandlerを使うのがいいらしいPHPApachephp-fpm

    ApacheでPHP-FPMを動かすなら、ProxyPassMatchではなくSetHandlerを使うのがいいらしい - Qiita
    Amigomr
    Amigomr 2020/03/18
  • docker-composeでイメージ1個だけ更新&リスタートする - Qiita

    タイトルの表現が合っているかが分からない。 docker-composeで単体を再構築、リスタートしたい場合 例)nginxだけ失敗した時 [root@dev test.jp]# docker-compose ps Name Command State Ports ----------------------------------------------------------------------------------- mysql docker-entrypoint.sh mysqld Up 3306/tcp nginx nginx -g daemon off; Exit 1 testjp_phpmyadmin_1 /run.sh phpmyadmin Up 0.0.0.0:3001->80/tcp web docker-php-entrypoint php-fpm Up 900

    docker-composeでイメージ1個だけ更新&リスタートする - Qiita
    Amigomr
    Amigomr 2020/03/18
  • DockerでFTPサーバーやSFTPサーバーをたてるのーと - Qiita

    Docker 1.13.0 FTP https://github.com/stilliard/docker-pure-ftpd SFTP https://github.com/atmoz/sftp 前提 開発環境としてFTPやSFTPが手元に欲しい。運用するわけではない。

    DockerでFTPサーバーやSFTPサーバーをたてるのーと - Qiita
    Amigomr
    Amigomr 2020/03/11
  • [Laravel5] Middlewareで取得した値をControllerで使う方法 - Qiita

    概要 Laravel5から使える機能にMiddlewareがあります。 Controllerの前処理、後処理を実装する時に使うやつです。 前処理をするMiddlewareで取得した値をviewに渡すのはView::shareを使って簡単にできたのですが、Controllerに渡すのに手こずったので、備忘録として記録しておきます。 やり方 まずMiddlewareクラスを作成します。 今回はDBから適当な値を取得して、Controllerに渡すようにしています。 Controllerに値を渡すためには、handleに渡ってくるrequestインスタンスに配列を追加しているところがすべてです。 requestインスタンスはController側で引き継がれるのでController側で値を取り出すことができます。 <?php namespace App\Http\Middleware; use

    [Laravel5] Middlewareで取得した値をControllerで使う方法 - Qiita
    Amigomr
    Amigomr 2020/03/10
  • 【PHP8.0】もう`strpos($haystack, $needle)!==false`って書かなくていいんだ - Qiita

    PHP8.0】もう`strpos($haystack, $needle)!==false`って書かなくていいんだPHPrfc日語訳PHP8strpos ある文字列中に特定の文字列が存在するかを調べる方法としてstrposが存在します。 しかし、そもそもstrposは『ある文字列中で特定の文字列が何文字目に出てくるか』を調べる関数であり、第一に使用目的が異なる関数です。 そしてこちらも有名な話ですが、先頭が一致すると0が返ってくるので、緩やかな比較ではfalseと区別されません。 PHPのよくある落とし穴のひとつです。 if(strpos('放課後アトリエといろ', 'アトリエ')){ echo '"放課後アトリエといろ"には"アトリエ"が含まれる'; // 表示される } if(strpos('放課後アトリエといろ', '放課後')){ echo '"放課後アトリエといろ"には"放課後

    【PHP8.0】もう`strpos($haystack, $needle)!==false`って書かなくていいんだ - Qiita
    Amigomr
    Amigomr 2020/03/10
    たぶん書かれるだろうなーと思って、でも書きたかったから書いたの。マルチバイトでも問題なく動いてくれると期待してるけどどうだろう?
  • RFC 8725 JSON Web Token Best Current Practices をざっくり解説する - Qiita

    ritou です。 今回は RFC 8725 JSON Web Token Best Current Practices を紹介します。 みんな大好き JWT (JSON Web Token) の BCP ときたらチェックせずにはいられないでしょう。 概要 JWTは 署名/暗号化が可能な一連のクレームを含む、URLセーフなJSONベースのセキュリティトークン です JWTは、デジタルアイデンティティの分野および他のアプリケーション分野の両方の多数のプロトコルおよびアプリケーションにて、シンプルなセキュリティトークンフォーマットとして広く使用/展開されています このBCPの目的は、JWTの確実な導入と展開につながる実行可能なガイダンスを提供することです ということで、何かのフレームワークでもプロトコルでもなければJWTを使ったユースケース考えたよって話でもなく、JWTを導入する上で基的な部

    RFC 8725 JSON Web Token Best Current Practices をざっくり解説する - Qiita
    Amigomr
    Amigomr 2020/02/29
  • Laravel で Fat Controller を防ぐ 5 つの Tips - Qiita

    この記事について Laravel は Policy や FormRequest など、Controller を補佐するモジュールを多く提供しているので Fat Controller になりにくいとは思いますが、それでもときどき Fat Controller に出くわすことがありますので、それらを防ぐために使えるテクニックというか、Tips を5つばかり紹介したいと思います。 はじめに Fat Controller とは? 簡潔にいえば、行数が多く(個人的には Controller だとひとつのメソッドが NCLOC で 50 行を超えると Fat 感を感じます、みなさんはいかがでしょうか)、行数が多いがために処理の流れを追うことが難しく、しばしば不具合の原因になるクラスのことをいうのだと思います。記事では、ただ行数が多いというだけでなく、複数のメソッドで処理が重複していたり、メソッドの中

    Laravel で Fat Controller を防ぐ 5 つの Tips - Qiita
  • DBeaver使い方メモ - Qiita

    DBeaverの使い方を忘れないようにメモしておく。 DBeaverとは DBeaverのサイトのトップに書いてある説明によると、 開発者、データベース管理者、アナリスト、およびデータベースを操作する必要があるすべての人々のための無料のマルチプラットフォームデータベースツール。 MySQL、PostgreSQLSQLiteOracleDB2、SQL Server、Sybase、MS Access、Teradata、Firebird、Apache Hive、Phoenix、Prestoなど、一般的なすべてのデータベースをサポート Windows版・MacOSX版・Linux版がある。 よいと思ったところ 様々なDBMSに対応している。 月イチくらいのペースで結構頻繁にバージョンアップされている。 UIがEclipseと同じなので、Eclipseの操作に慣れていると同じ感覚で操作できる。

    DBeaver使い方メモ - Qiita
    Amigomr
    Amigomr 2020/02/15
    DBeaverを仕事で使ってるけど日本語訳がイマイチなのよね...
  • Laravel5でのValidationMessageを日本語化してみた - Qiita

    Laravel5で入力チェックを実装した際、デフォルトのValidationMessageが英語だったので、日語化しました。 その際の手順を下記で紹介していきます。 環境 デフォルトのValidationMessageを確認する お馴染のログイン画面 何も入力せずに「Login」ボタンを押下すると.... ↓ required. あー「必須」入力か..... もちろんわかるのですが、日語にしましょう笑 では下記で設定ファイルをいじっていきます! localeをjaに変更する config/app.phpを開き70行目くらいにApplication Locale Configurationenという項目があるので、 enをjaに変更する

    Laravel5でのValidationMessageを日本語化してみた - Qiita
    Amigomr
    Amigomr 2020/02/12