タグ

関連タグで絞り込む (258)

タグの絞り込みを解除

phpに関するred_snowのブックマーク (484)

  • PHP開発環境をDockerで構築する「phpstack」レビュー | さくらのナレッジ

    最近は開発環境を仮想化するケースが増えてきました。元々WindowsではPHPの開発時にVMWare Playerを使ってLinuxを動かして開発することが多かったですが、それがMac OSXLinuxであっても有益に使われています。一つのプロジェクトであれば環境をローカルに作ってしまっても良いのですが、プロジェクトごとに異なる環境を用意したり、LAMPだけに限らないアーキテクチャの場合に開発に携わる人員分、環境を作るのは大変です。 そこで今回はphpstackを紹介します。CoreOS上にDockerを使って様々なサービスをインストールして様々なプロジェクトに対応できるPHP開発環境を構築してくれます。リモートにログインせずとも使えるという利点があります。 必要なもの Docker Docker Compose オプションとして、 Vagrant VirtualBox があると便利です

    PHP開発環境をDockerで構築する「phpstack」レビュー | さくらのナレッジ
    red_snow
    red_snow 2015/07/15
    PHPのバージョンを任意に変えれればいいのになー
  • PHPプロジェクトを簡単にデプロイするならDeployerがお薦め — A Day in Serenity (Reloaded) — PHP, CodeIgniter, FuelPHP, Linux or something

    今日はPHP製のデプロイツールの紹介です。デプロイツールとはCapistranoみたいなツールのことです。コマンド一発でデプロイが完了するようにするツールです。 PHP製のツールもいくつかありますが、Deployerは非常にシンプルなツールで、最近3.0がリリースされました(最新版は3.0.4)。 https://github.com/deployphp/deployer/releases/tag/v3.0.0 より。 インストールが簡単 公式サイト http://deployer.org/ へアクセスし、deployer.pharをダウンロードするだけです。 公式には/usr/local/bin/depにインストールすると書いてありますが、プロジェクトのフォルダに突っ込んでも問題ありません。 私はプロジェクトのルートにdeployというフォルダを作成し、そこに関連するファイルをまとめるこ

  • APCキャッシュを安全に扱うSafeApcを作った - nazolabo

    https://github.com/nazo/safeapc なにこれ? APC(APCu)のユーザーキャッシュ(アプリから指定するキャッシュ。ソースコードのキャッシュではない)を「そこそこ安全に」扱うための簡単なラッパーです。 どう使うの? packagistに登録してあるので普通にcomposerから入れてください。 基的には普通にapc_fetchとかするのがSafeApc::get等に変わっただけです。 あと、リクエストの最初に、以下を入れる必要があります。 // キャッシュで使用するリクエスト開始時間を指定 SafeApc::setCacheStartTime($_SERVER['REQUEST_TIME']); // キャッシュのバージョン番号を指定(この例では外部ファイルから) SafeApc::setCacheVersionKey(file_get_contents('

    APCキャッシュを安全に扱うSafeApcを作った - nazolabo
  • メール回りのテストやデバッグには「MailCatcher」が便利ですぞ | 東北ギーク

    こんにちは。リスペクトの木村です。 今日は、「MailCatcher」というRubyで使うGemライブラリの話をお送りします。 MailCatcher とは Samuel Cochran氏が開発した、シンプルなSMTPサーバーです。特に細かい設定は不要で、起動するだけでSMTPサーバーが起動します。(ポートは1025番) これだけであればよくあるSMTPサーバーなのですが、MailCatcherの特徴は「SMTPサーバーを経由したメールをブラウザ上から確認できる」という所にあります。送信しようとしたメールはMailCatcherのSMTPサーバーから先には送信されません。 Webサーバーが同時に起動(ポートは1080番)するので、ブラウザからアクセスすると下記のような画面が表示されるので、そこから確認できます。 届いたメールはほぼリアルタイムで受信トレイに表示されるため、リロードの必要はあ

    メール回りのテストやデバッグには「MailCatcher」が便利ですぞ | 東北ギーク
  • QdmailReceiver Multibyte mail decoder & POP Client

    hal456トップページ QdmailReceiverでできること メールデコード(日語OK) 受信サーバー(POP)操作 PHPで、日語での空メールや多機能転送メールを簡単に実現したり、POPメールボックス操作でWEBメールを実現できたりします。主にメールのMIMEデコード機能、POP操作機能から成り立っています。その他、様々な用途が考えられるでしょう。 Pear::Mail,Pear:MIMEなどで同様の機能は実現できますが、メールの仕組みを理解していないと難しいです。Qdmailシリーズは、「初心者には簡単に、上級者には詳細に」のポリシーのもと、簡単使用方法と、詳細使用方法の両方を使うことができます。 簡単にメールのデコードができるので、例えば、取得したメールをヘッダーと文まるごとデータベースに保存しても、すぐに内容を取り出すことができます。 gmailのようなWEBサービス

    QdmailReceiver Multibyte mail decoder & POP Client
    red_snow
    red_snow 2015/02/18
  • PHPでID生成器を実装してみました | チャットワーククリエーターズブログ

    こんにちは!Web開発チームの安達です。 この記事は、ChatWork Advent Calendar2014 15日目の記事です。 みなさん、Scala使ってますか? 今日は「PHPでID生成器を実装してみた」というお話をしたいと思います。 IDの生成ウェブサービスのグローバル展開やスケーラビリティについて考えだすと、IDの生成に関わる課題が浮かび上がってくると思います。 例.「東京とシドニーのデータセンターにサーバを配備したとき、IDが衝突しないように生成できるのかな?」 またサービスの可用性について考えだすと、こちらでもID生成が絡む課題が。 例.「RDBMSのAUTO INCREMENTでIDを生成しているんだけど、この1台が落ちたらサービス止まっちゃう…。」(単一障害点) 理想としては、スケールアウト出来て、複数のサーバで並列にID生成が可能で、単一障害点にならないような形でID

    PHPでID生成器を実装してみました | チャットワーククリエーターズブログ
    red_snow
    red_snow 2014/12/15
  • PHPソースコード難読化・暗号化ツール所感 - メモ用紙

    2014年7月1日追記:この記事は情報が古い可能性があります PHP ソースコードの難読化・暗号化ツール php-compressor, ibLind, プラセンス SPHP, ionCube PHP Encoder を試してみた。 php-compressor php-compressor はコード実行に必要のない空白や改行、コメントを削除し、変数名を短縮してくれる。フロントエンドで行う JavaScriptCSS の圧縮と同じ状態のものが得られる。 Google Code Archive - Long-term storage for Google Code Project Hosting. このプログラム自体も PHP で書かれているので、PHP が動作すれば環境を問わず使える。構文解析に PHP の標準関数 token_get_all を使っているところが面白い。 クラスの変

    PHPソースコード難読化・暗号化ツール所感 - メモ用紙
  • PHP CS Fixerで快適PHPライフ - FLOG SPLASH

    2017/03/30 追記 新しいバージョン (v2.0) の記事を書きましたのでこちらもご覧ください fivestar.hatenablog.com この記事は PHP Advent Calendar 2014 の8日目の記事です。 コーディング規約が守れない方とお悩みの方も、チームメンバーがなかなか守ってくれないとお悩みの方も、 PHP CS Fixer があればもう安心。PHP CS Fixer が PHP コードをコーディング規約に沿って整えてくれるので、秩序ある PHP ライフが約束されるでしょう。 そんなこんなで PHP Advent Calendar 2014 の 8 日目ですね。みなさんこんにちは、 fivestar こと小川です。いつのまにかクロコスがなくなって Y の人になっちゃいましたね。 昨今は PSR (PHP Standard Recommendation) の

    PHP CS Fixerで快適PHPライフ - FLOG SPLASH
    red_snow
    red_snow 2014/12/08
  • PHP7はなぜ速いのか(zval編) - hnwの日記

    この記事はPHP Advent Calendar 2014の7日目です。 僕は先日のPHPカンファレンス2014でPHP7に関するLTをしました(参照:「PHPNGの動向」)。ただ、時間が限られていたこともあり、あまり踏み込んだ内容には触れませんでした。 稿ではLTの内容から深掘りし、zvalという内部的な構造体がどう変わるのか、性能面のメリットにフォーカスして解説してみます。 PHPをとりまく状況 まず最近のPHPの話題をおさらいしておきましょう。 これまでPHPには実用レベルの別実装が存在しない状態が続いていましたが、HHVMの登場で状況が変わってきました。HHVMはFacebookが開発しているPHP実行環境で、PHPより高速で互換性も高いのが特徴です。Facebookで実際に利用されているだけでなく、他の企業でも商用サービスで利用する事例が増えてきています。 そんな中、2014年

    PHP7はなぜ速いのか(zval編) - hnwの日記
  • PHP DataMapper — Spot ORM

    Solid Foundation. No Magic. Spot is a simple and efficient DataMapper built on Doctrine DBAL. PHP 5.4+ with support for MySQL, PostgreSQL, SQLite, and more... View on GitHub     Read The Docs No AnnotationsAnnotations are not code. They are not extendible, there are no type hints or auto-completion. No Proxy ClassesThe Entities you define are the same entities that both you and Spot will be workin

    red_snow
    red_snow 2014/12/02
    PHP 5.4+
  • PDOの真の力を開放する - PHPでデータベースを扱う(3)

    ちょっと遅れましたが、シリーズの第3回です。前回までに論じた内容をふまえて、簡単な実装を示します。↓前回までの内容はこちら。 DAOの悪夢 - PHPでデータベースを扱う(1) - 泥のように ドメイン駆動設計という救世主 - PHPでデータベースを扱う(2) - 泥のように 題材 「記事にタグを設定できるブログ」みたいなシステムを考えてみます。ブログ記事を示すEntryテーブル、タグを表すTagテーブルの二つを用意しました。MySQL WorkbenchによるER図(鳥足記法)は以下になります。 1つのEntryに対して複数のTagがある、1対多の関係です。同じTagが複数のEntryに関連するため、多対多の関係と見なすこともできそうですが、タグ程度だとあまり意味がないので、これ以上のテーブル分割はやめておきます。 Entryテーブルの主キーがentryIdと冗長な名前をしているのは、自

    PDOの真の力を開放する - PHPでデータベースを扱う(3)
    red_snow
    red_snow 2014/12/02
    “DataMapper”
  • PHPでCSP(Content Security Policy)を導入してXSS対策を強化してみよう — A Day in Serenity (Reloaded) — PHP, CodeIgniter, FuelPHP, Linux or something

    PHPで簡単にCSPを導入するためのライブラリを作成してみました。 kenjis/csp https://github.com/kenjis/php-csp-nonce-source 既存サイトへの影響を最小限にしてCSPが導入できることを目的としています。 基的にCSP nonce-sourceを使い、nonceのないscriptタグは実行しないようにすることでXSS対策を強化します。 このライブラリの仕様としては、CSP nonce-sourceに対応していると思われる指定ブラウザに対してのみCSPヘッダを出力します。現状、ChromeとFirefoxのみが指定されています。 なお、CSP nonce-sourceに対応したChromeのバージョンがわからないので、確認できたバージョン37以上としてます。 CSPについて CSPについてよく知らない方は以下のスライドなどをご覧下さい。

    PHPでCSP(Content Security Policy)を導入してXSS対策を強化してみよう — A Day in Serenity (Reloaded) — PHP, CodeIgniter, FuelPHP, Linux or something
  • 「Ansibleではじめるサーバ作業の自動化」を発表してきました

    2014/10/11 に開催された PHPカンファレンス にて、「Ansibleではじめるサーバ作業の自動化」という発表を行ってきました。 午前中のセッションだったのですが、多くの方にご参加頂き、ありがとうございました。 発表資料 発表資料をslideshareに公開しました。 今回は、これからAnsibleを使ってみようという方を対象として、Ansibleの基的な内容をメインにしました。また、実際に私自身がPHPプロジェクトで採用した際のユースケースを紹介しています。 発表後、「Ansibleをやってみます!」という意見を頂けたので、このセッションの目的は達成することができました:D このセッションのフィードバックは、joind.in にて受けて付けています。すでにいくつか好評価を頂いていて安心していますが、もし良かったらお願いします。 https://joind.in/talk/vi

  • オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法

    オープンソースCMS「concrete5」がバージョン5.7でモダンに生まれ変わりました。Read less

    オープンソースCMSに学ぶ、前PSR時代のプロジェクトが脱レガシーする5つの方法
  • CentOS6にPHP5.6をyumでインストール

    CentOS7も出ていますが、とりあえず6でパパっと試してみました yumのremi-php56を使います PHP 5.6 as Software Collection – Les RPM de Remi – Blog remiの導入 ~~~ $ sudo rpm -ivh http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ~~~ PHPのインストール php-gdで失敗するのはremi-php55と一緒だなー ~~~ $ sudo yum install –enablerepo=remi-php56 php php-commo

    CentOS6にPHP5.6をyumでインストール
    red_snow
    red_snow 2014/08/25
    書きました
  • PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記

    PHPで最近注目のHTTPクライアントライブラリにGuzzleがあります。日での知名度はまだまだという印象ですが、かなり高機能かつ真面目にメンテナンスされている印象で、今後のデファクトスタンダードになりうるライブラリと言えるでしょう。 稿ではこのGuzzleを使ってWebサーバから並行にダウンロードする方法を紹介します。Webブラウザのように同時に複数コネクションを管理しながらKeep-Aliveでコネクションを使い回しますので、下手なコードで実現するより接続先Webサーバにも優しいはずです。 Guzzleの特徴 まずは、Guzzleについて僕が特徴的だと思う点を紹介します。 パッと見でわかりやすいインターフェース cURLは必須ではないがデフォルトでcURLを使う cURLの無い環境がありうるので、cURL無しでも動くのは嬉しい cURLのわかりにくいインターフェースを隠してくれるの

    PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記
  • PHPのコード静的解析をわかりやすく見せてくれるScrutinizer CI

    Scrutinizer CIでPHPも静的解析 #phpstudy というのが面白そうだったので試してみました 試した結果はこちら、問題点をissueとして登録してくれるので非常に見やすいです Code Quality Summary – nobuhiko/EC-CUBE – Scrutinizer こんな感じで問題点を1つ1つ説明してくれるので直しやすいのがとてもいいですね 登録は、githubと連携→リポジトリを選ぶっていう作業だけなのでとても簡単 4000件のissueは暇な時に手を付けていこうとおもいます\(^o^)/

    PHPのコード静的解析をわかりやすく見せてくれるScrutinizer CI
    red_snow
    red_snow 2014/08/22
    書きました
  • Windows PowerShell で Linuxでの & を実現する

    Linuxだと & でコマンドをバックグラウンドで実行する事ができますが、Windowsだとどうすりゃいいのか調べました Linuxの場合 PHPのビルトインサーバーをバックグラウンドで動かしたいときはこう書きます ~~~ php -S localhost:8000 -t /path/to/public_html/ & ~~~ Windowsの場合 これと同等のコマンドをPowerShellではこう書けばいいようです ~~~ start-process -FilePath php -ArgumentList “-S localhost:8000 -t C:\path\to\public_html” -WindowStyle hidden ~~~ ちなみに、AppVeyorだとこういう書き方で動きました appveyor.yml ~~~ – ps: start-process -FilePa

    Windows PowerShell で Linuxでの & を実現する
    red_snow
    red_snow 2014/08/21
    書きました。
  • Modern PHP Testing Framework “Codeception” を使って簡単なブラウザテストをする

    画面が正しく表示されているのか、を確認したいときにSeleniumを使うのは大変だなーと調べていたらCodeceptionを見つけました Codeception PHP Testing Framework is designed to work just out of the box. This means its installation requires minimal steps and no external dependencies preinstalled (except PHP, of course). Only one configuration step should be taken and you are ready to test your web application from an eye of actual user. だそうです。 導入は簡単、Quick

    Modern PHP Testing Framework “Codeception” を使って簡単なブラウザテストをする
    red_snow
    red_snow 2014/08/19
    書きました
  • Codeceptionを使ってみた(1) 導入 - think it over

    個人的に大注目しているPHP用のテスティングフレームワーク Codeception - BDD-style PHP testing. を試しています。 まだ日語情報が少ないですが、以下のコードを見て一発で気に入ってしまいました。 <?php $I->am('testing framework'); $I->wantToTest('your web application'); $I->see('it works!'); Codeceptionってなに? 特徴としては、 単体テスト、機能テスト、受入テストをすべてサポートする「フルスタックな」テスティングフレームワークである 主要フレームワークのサポートが充実している BDDスタイルの文法をサポートしており、テストコードの可読性に優れる 内部ではPHPUnitを利用しており、PHPUnit形式のテストも可能 といったところでしょうか。 20

    Codeceptionを使ってみた(1) 導入 - think it over