タグ

*phpに関するAkinekoのブックマーク (417)

  • nginx と PHP-FPM の仕組みをちゃんと理解しながら PHP の実行環境を構築する

    DISTRIB_ID=Ubuntu DISTRIB_RELEASE=14.04 DISTRIB_CODENAME=trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS" PHP-FPM って何? Answer PHP: FastCGI Process Manager (FPM) - Manual FPM ( FastCGI Process Manager ) は PHP の FastCGI 実装のひとつで、 主に高負荷のサイトで有用な追加機能を用意しています。 そもそも CGI って何? Common Gateway Interface (CGI) - Wikipedia Common Gateway Interface(コモン・ゲートウェイ・インタフェース、CGI)は、ウェブサーバ上でユーザプログラムを動作させるための仕組み。 現存する多くのウェブ

    nginx と PHP-FPM の仕組みをちゃんと理解しながら PHP の実行環境を構築する
  • GitHub - coderello/laravel-populated-factory: 🏭 An easy way to generate populated factories for models.

  • Dockerで作るNginx + PHP7 + Xdebug環境

    PHP での開発や PHP の使い方を練習する時、ローカルにすぐ立ち上がる開発環境があると便利です。PHP といえば Wordpress!開発環境は XAMPP!と良く紹介されてきましたが、2019 年の開発環境としては docker をオススメします。 今回は Nginx + PHP7-fpm のローカル環境を docker で作成しました。もちろん、データベースも追加できます。 docker を使うメリット docker は仮想環境の立ち上がりが高速で、多くの仮想環境を一度に立ち上げておくことも容易です。dockerfile や docker-compose.yaml といった設定ファイルを元に環境が構築されるため、一度設定を作れば同じ環境を何度でも何個でも作成できます。開発環境を壊すことを恐れなくて良いのは大きなメリットです。 実際のサーバーだと怖くて中々できないことが docker

  • Laradockを使ったLaravel開発環境構築 - Qiita

    はじめに 今更ながらPHPフレームワークで人気のLaravelをLaradockを用いて開発環境構築してみました。 Laradockとは 「dockerLaravelを動かすぜ!」ということに焦点を当てて開発が進められたプロジェクトですが、 今ではLaravelだけでなく、他のPHPプロジェクト(Symfony、CodeIgniter、WordPress、Drupal…)までもサポートしています。 Laradock is well known in the Laravel community, as the project started with single focus on running Laravel projects on Docker. Later and due to the large adoption from the PHP community, it starte

    Laradockを使ったLaravel開発環境構築 - Qiita
  • 実践で学ぶ、Laravelをローカルから本番環境にデプロイするまで

    2019年3月19日、LaraVue勉強会が主催するイベント「Laravel/Vue.js勉強会#8 オールスターズ」が開催されました。LaravelVue.jsを用いて開発を行っている各社が一堂に会し、互いの知見を共有するイベント。第8回となる今回は、過去に登壇した企業のエンジニアたちがLTを行います。プレゼンテーション「Laravel番環境にデプロイするまで 」に登壇したのは、株式会社うるるの紅林優氏。講演資料はこちら Laravel番環境にデプロイするまで 紅林優氏(以下、紅林):「Laravel番環境にデプロイするまで」とテーマでLTさせていただきたいと思います。 まず最初に自己紹介させていただきます。 私、株式会社うるるでサーバサイドエンジニアをやらせていただいている、新卒1年目の紅林といいます。どうぞよろしくお願いします。Twitterは、@yukure3という

    実践で学ぶ、Laravelをローカルから本番環境にデプロイするまで
  • 本番運用に備えたPHP7.3.0のコンテナを作る - Qiita

    はじめに 年末にひさしぶりにPHPプロジェクトを作る機会がありました。 いつの間にかPHP7.3がリリースされており、 いつの間にかPHPの公式コンテナも出ていたので、 ノウハウを共有するため、ひととおり番運用を想定したコンテナイメージの作成方法をまとめました。 長くなったので、実際にプロジェクトとして動かすための手順は以下の記事でまとめました。 dockerPHP7.3+Laravel環境を15分で作る~2019年版 構築環境のバージョン情報 MacOS High Siera 10.13.6 Docker Desktop : Version 2.0.0.0-mac81 (29211) 最終的なDockerfile 2019/01/26 追記 @hokutoasari さんの記事を参考に echo 'opcache.optimization_level=0x7FFFBBFF' を追加

    本番運用に備えたPHP7.3.0のコンテナを作る - Qiita
    Akineko
    Akineko 2020/01/21
  • 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++は

    Akineko
    Akineko 2020/01/17
  • P++: 銀河に平和をもたらすための奇策と決着 - Qiita

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

    P++: 銀河に平和をもたらすための奇策と決着 - Qiita
    Akineko
    Akineko 2020/01/17
  • コンテナ開発の始め方 - Qiita

    社内向けの講演のために作ったスライドですが、わざわざGoogle プレゼンテーションにするまでもなかったし、特段秘密の情報もなかったので、Qiitaスライドの方に作りました 多分ちょいちょい追記します 対象 まだコンテナ開発していない人 コンテナ開発がうまくいかない人 既存プロジェクトをコンテナ化したい人 お品書き コンテナの概念のおさらい コンテナでの開発 docker のネットワーク docker-compose を使った開発の効率化 コンテナの概念のおさらい VM と コンテナ コンテナの目的 ある前提となる状態のもとで、特定のコマンド(のみ)を実行したときの動作をシミュレートすること サーバの中のプロセス $ ps -A PID TTY TIME CMD 1 ? 00:00:00 init 2 ? 00:00:00 kthreadd 3 ? 00:00:04 ksoftirqd/0

    コンテナ開発の始め方 - Qiita
  • Laravel使用時に困った点と対処方法 - ぐるなびをちょっと良くするエンジニアブログ

    初めまして。レストランサービス開発Gのまつやんです。 ぐるなびを利用されている加盟店様が使われる、店舗ページ管理ツール「ぐるなび PRO for 飲店」の開発・保守のほか社内用管理ツールのリプレイス等も行っております。 今回は、社内用管理ツールのリプレイスでLaravelを使用して実装したときに困った点とその対処方法を書いてみます。 社内ツールのリプレイスでLaravelを導入 ぐるなびの社内用管理ツール(※1)のひとつ「エリア割付ツール」は、お店の緯度・経度を入力することで以下のようなことができます。 (※1)社外からのアクセスはできません 周辺のスポット(例:上野動物園とか東京ドーム)などの情報を飲店様に紐付け 周辺駅の情報を取得(紹介している機能は一部です) このツールが古くなり改修要望も上がってきておりましたので、リプレイスすることになりました。流行りのフレームワークかつ、チー

    Laravel使用時に困った点と対処方法 - ぐるなびをちょっと良くするエンジニアブログ
  • 【PHP7.4】ついにPHPにプロパティ型指定がやってくる - Qiita

    Typed Properties 2.0というRFCが投票フェーズに入ったのですが、2018/09/13時点で賛成48反対0となっていて、ほぼ決まりの状態です。 Typed Properties 2.0 どういうRFCなのかというと、これです。 class User { public int $id; public string $name; public function __construct(int $id, string $name) { $this->id = $id; $this->name = $name; } } class Example { // 対象型はvoidとcallable以外全て public int $scalarType; protected ClassName $classType; private ?ClassName $nullableClassTy

    【PHP7.4】ついにPHPにプロパティ型指定がやってくる - Qiita
    Akineko
    Akineko 2020/01/15
  • PHPのハマりポイントのリンク集 - Qiita

    PHPのハマり情報のまとめです。主に罠な仕様、予想外の振る舞い、ドキュメントに詳しくは書いてない振る舞いについての情報をまとめていきます。ここに載ってない情報があればぜひとも教えて下さい。頂いた情報をもとに随時更新していきます。 PHPは引数が足りないときはエラーになるが、引数が多いぶんには何も言わない - Qiita PHPはときどき掛け算ができない - Qiita PHPのDateTime::ISO8601はISO8601ではない - Qiita SplFileObjectのREAD_AHEAD, SKIP_EMPTY, DROP_NEW_LINEPHPのバージョンによって挙動がバラバラな件 - Qiita PHP: iterable型はiterator_to_array()に渡しちゃいけない - Qiita PHPの正規表現で^$より\A\zがいい理由 - Qiita PHP:文字

    PHPのハマりポイントのリンク集 - Qiita
    Akineko
    Akineko 2020/01/15
  • Laravelの開発環境をDockerを使って構築する - Qiita

    2019/8/10 注意 構成を大幅に見直し、記事も合わせて加筆しています。 2019/9/4 Laravel 6 でも動作するように修正を加えました。 2019/9/28 要望が多かったのでNodeコンテナを起動したままの状態に変更しました。 2019/10/30 忙しい人向けの記事を書きました 2019/12/31 appコンテナをPHP7.4にアップデートしました。 2020/5/9 この記事の内容を全て書き直しました 最強のLaravel開発環境をDockerを使って構築する【新編集版】 当記事で使用しているGitHubリポジトリは既にアーカイブされています。使える部分はあるかと思いますが、ご利用は自己責任でお願いします。 概要 docker(docker-compose)でLEMP環境(PHP/nginx/MySQL)を構築し、Laravelの新規プロジェクト作成まで行います。

    Laravelの開発環境をDockerを使って構築する - Qiita
  • PHPサーバーサイドプログラミングパーフェクトマスターのCSRF対策に脆弱性

    サマリ PHPサーバーサイドプログラミングパーフェクトマスターには、PHP入門書としては珍しくクロスサイト・リクエストフォージェリ(CSRF)対策についての説明があるが、その方法には問題がある。アルゴリズムとして問題があることに加えて、実装上の問題があり、そのままコピペして用いると脆弱性となる。 はじめに 古庄親方の以下のツイートを見て驚きました。 CSRF用のトークンの作成 $token = password_hash(mt_rand(), PASSWORD_DEFAULT); ってのを書籍で見た………もンのすンげぇなぁ(苦笑 書籍名でググって調べる……評判が悪いので、まぁ、納得っちゃぁ納得。 — がる (@gallu) July 17, 2019 CSRFトークンの生成に、password_hash関数を使うですと? 親方に書籍名を教えていただき、購入したのが、この記事で紹介する「PH

    Akineko
    Akineko 2020/01/15
  • シェルを経由しないOSコマンド呼び出しがPHP7.4で実装された

    この記事はPHP Advent Calendar 2019の5日目の記事です。 はじめに 私は6年前に、PHP Advent Calendar 2013として「PHPだってシェル経由でないコマンド呼び出し機能が欲しい」という記事を書きました。その中で、OSコマンドインジェクション対策の根的かつ安全な対策は「シェルを経由しないコマンド呼び出し」であることを指摘した上で、末尾に以下のように書きました。 PHPコミッタのみなさま、PHP5.6の新機能として、シェルを経由しないコマンド呼び出しの機能を追加できませんか? 現実には当時からPCNTL関数にてシェルを経由しないコマンド呼び出しはできたのですが、当関数の使用が難しいことと、CLI版あるいはCGI版(FastCGIは可)のPHPでないとサポートされていないなどの制限があり、popenやproc_openなど使いやすいコマンド呼び出し関数に

    Akineko
    Akineko 2020/01/15
  • PHP開発でComposerを使わないなんてありえない!基礎編 - Qiita

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

    PHP開発でComposerを使わないなんてありえない!基礎編 - Qiita
    Akineko
    Akineko 2020/01/14
  • PHPプログラミングも快適に! VS Codeの二大拡張機能

    PHPプログラミングも快適に! VS Codeの二大拡張機能:Visual Studio Code+PHPの可能性を探る(1/3 ページ) VS CodeとPHPでWebアプリ開発はどこまで簡単になるのかを探る新連載。今回はVS Codeを利用したPHPによるアプリ開発に必須の拡張機能を2つ紹介する。 連載「Visual Studio Code+PHPの可能性を探る」 連載では、Visual Studio Code(以下、VS Code)を使ってPHPプログラミングする際の基事項を紹介していく。ただし、PHPの構文や文法については取り上げない予定だ。これらについては、@IT内の連載「Web業界で働くためのPHP入門」やPHP公式サイトの「PHP マニュアル」などを参考にしてほしい。また、VS CodeのGUI構成や、基的な使い方については「Visual Studio Codeの使い方

    PHPプログラミングも快適に! VS Codeの二大拡張機能
    Akineko
    Akineko 2018/09/12
  • 2017年のPHPフレームワーク——2強時代に何を学ぶべきか?

    動きの早いフロントエンド界隈や他の言語の躍進の話題に押されて、いつまでも古い知識のままPHPで開発していませんか? 知識のアップデートに役立つ、最近のフレームワークの動向を、ちょっと辛口な現状分析とともに。 私が約1年前に書いた記事の続きを書くことにしたのは次の質問を受けたからです。 Q:PHP MVCフレームワークについて近況を教えてください。(2017/2/24) A:PHPのフレームワークといえば、現時点ではLaravelとSymfonyに尽きます。これから新しいプロジェクトを始めるなら、わざわざCakePHP、Zend、CodeIgniter、Yiiなどを使う理由は見当たりません。これらのフレームワークを使い慣れているか開発経験のある開発者がいないのなら、使う理由はないでしょう。 実際に開発が始まったら、ツールやプラグインを集めたり、よくある問題への対処方法を調べたりする必要があり

    2017年のPHPフレームワーク——2強時代に何を学ぶべきか?
  • PHPの中身をgdbで観察できるようなDockerイメージを作りました - hnwの日記

    CLI版のPHPをgdb上で動かしつつ、内部的なデータ構造を覗き見ることができるようなDockerイメージを作ってDocker Hubにアップロードしました。Docker環境さえあればすぐに動かすことができます。 このイメージを動かせばCのコードを書かなくてもPHP内部のデータ構造を確認することができます。PHPの内部構造を詳しく知りたい、というような人は参考にしてみてください。 準備 Macの人はDocker for Macを用意しましょう。他のOS上でも同様にDockerをインストールしてください。また、イメージの圧縮時サイズが200MB程度ありますので、それなりのネットワーク環境で遊ぶことをオススメします。 起動 Docker 1.10以降ではseccompにより一部システムコールが制限されているため、コンテナ内でgdbによるデバッグができません。期待通りにgdbを動かすにはコンテナ

    PHPの中身をgdbで観察できるようなDockerイメージを作りました - hnwの日記
  • Cakeboxでお手軽CakePHP - コネヒト開発者ブログ

    皆様、こんにちは! 今一番楽しみなのは 劇場版「Fate/stay night」Heaven's Feelであると言っても過言ではないエンジニアの結城(@super_manner)です! さて、突然ですが現在私はCakePHP3を使ってAPI開発を行っています。 エントリを読んでくださってるみなさまは普段どのような言語、フレームワークを使用されていますか? 体感として、近年私の周りでPHPをメインに開発されている方にはLaravelを使用されている割合が高いように思います。 日頃開発を行う中で、ふと「さっくり他のフレームワークを試してみようかな」と思うことはありませんか? 私の場合は、つい最近まではLaravelをメインに開発を行っていたので、CakePHP3を使用するにあたってあまりコストを掛けずに試すことができるものをもとめていました。 日はお手軽にCakePHP3を試してみたいな

    Cakeboxでお手軽CakePHP - コネヒト開発者ブログ