タグ

PHPに関するat_yasuのブックマーク (446)

  • PHP7の現状

    (Last Updated On: 2018年8月13日)PHP7が今年の秋リリースされる予定です。まだまだ多くの変更が行われる予定ですが、現状を簡単にまとめてみたいと思います。代表的な物のみ取り上げています。 ご存知ない方の為に書いておきます。現在リリースされているPHPPHP5です。次のPHPPHP7になり、PHP6はリリースされません。PHP6をUnicodeをネイティブ文字列としてサポートするバージョンとして開発されましたが、文字エンコーディングチェックを内部で自動的に行おうとするなど、無駄が多く遅いため破棄されました。(文字エンコーディングのバリデーションは来アプリでするものです)このため、PHP6はスキップされ次のPHPPHP7になります。 追記:PHP7.0は既にリリースされています。概要はPHP 7.0の概要・新機能・互換性、詳しくはマイグレーションドキュメントをご

    PHP7の現状
    at_yasu
    at_yasu 2015/01/26
    なるほどなー
  • Mammouth

    Mammouth is a small language that compiles into PHP, inspired by CoffeeScript. It's compiled to PHP code/files that you can run on your PHP server. Mammouth is created by Wael Amine Boutglay (wamalaka). Latest Version: 0.1.7 sudo npm install -g mammouth Overview Mammouth on the left, compiled PHP output on the right. {{ number = 42 opposite = true square = (x) -> return(x * x) $square() list = [1,

    at_yasu
    at_yasu 2015/01/22
    CoffeeScriptでPHP吐けるやつねーかなと思って探したらあった。ほげーー
  • 「Azure Websites で作るスケーラブルな PHP アプリケーション」を GoAzure 2015 で発表してきました

    Home > Azure | Laravel | PHP > 「Azure Websites で作るスケーラブルな PHP アプリケーション」を GoAzure 2015 で発表してきました Azure コミュニティの一大イベント GoAzure 2015 にて、「Azure Websites で作るスケーラブルな PHP アプリケーション」という発表を行ってきました。 セッションでもお話したのですが、テーマは、もう一つあり、それは「LAMP(LAPP) ユーザが使う Azure Websites」でした。 Azure は、マイクロソフトのサービスなので、どうしても Windows に最適化されているイメージがあったのですが、普段 Mac で開発して、Linux にデプロイして、運用している人間でも、興味深いサービスであることを伝えようと考えました。 発表資料 発表資料は、こちらです。 発

    at_yasu
    at_yasu 2015/01/19
    ほー
  • sublime text3でphpの開発環境を整える - RAKSUL TechBlog

    11月入社のAです。 前職はソシャゲの会社でPerlを中心に開発しており、php歴は約2ヶ月ほどです。 sublime text3で開発する場合は、デフォルトで十分開発できるのですが、 いくつか小技的なものの紹介させて頂きます。 sshfsでサーバーをマウントしてsublコマンドを使う ラクスルではIDCFクラウド上のサーバーにsshでログインして開発しているので、 sshfsでリモートサーバーをローカルにマウントしています。 sublimeにはsublコマンドが付属しており、このコマンドを使うとターミナルからファイルを開くことができ非常に便利なのですが、リモートのファイルに対しては当たり前ですが使うことができません。 sshfsでマウントすれば、ターミナルからマウント先に移動できるので ローカルファイルと変わらず使うことができます。 DocBlockerを入れて、phpdocコメントを書

    sublime text3でphpの開発環境を整える - RAKSUL TechBlog
  • Javaで書かれたPHP処理系のJPHPが高速だった - hnwの日記

    JPHPというJavaで書かれたPHP処理系があります。これは2013年10月にはじまった新しいプロジェクトで、大半をメイン開発者一人で開発しているようですが、既に一定以上の完成度です。また、内部的にはPHPファイルを解釈して直接Javaバイトコードにコンパイルしており、かなり高速なPHP処理系になっています。 他のPHP処理系と異なり、既存のPHPコードをWebサーバ上で動かすことを重視していないようにも見えますが、興味深いプロジェクトですので紹介します。 JPHPを動かしてみる さっそくJPHPを試してみましょう。現時点ではGitHubからソースコードを持ってきてビルドする必要があります。JDK7以上が必要ですので注意してください。JPHPのドキュメント「Getting Started」の通り、次のようにしてJPHPがビルドできます。 $ git clone https://githu

    Javaで書かれたPHP処理系のJPHPが高速だった - hnwの日記
    at_yasu
    at_yasu 2015/01/17
    「PHPソースコードからJavaバイトコードにコンパイルするような実装になっており、ベンチマークテスト結果によれば他の実装と比べても高速な処理系」ほー
  • やってみよう!VagrantでUbunt14.04にHHVMをインストールしてHello Worldするまで · DQNEO日記

    Home Subscribe Ubuntu14にHHVMをインストール 公式Wikiに載ってる手順そのままでいけます。 https://github.com/facebook/hhvm/wiki/Prebuilt-packages-on-Ubuntu-14.04 wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add - echo deb http://dl.hhvm.com/ubuntu trusty main | sudo tee /etc/apt/sources.list.d/hhvm.list sudo apt-get update sudo apt-get install hhvm HHVMを動かしてみる $ hhvm --version HipHop VM 3.3.0 (rel) Compiler: t

  • 脆弱性対策におけるhtmlspecialchars()の使用箇所について

    PHPでスクリプト挿入攻撃やXSS対策として、サイタイズのためにhtmlspecialchars()を使うことがあると思いますが、使用する際の詳細が気になったので質問します。具体的には以下の2点です: サニタイズ関数を適用するタイミングについて 【ユーザからの入力時】【HTMLへの出力時】【その中間】の3パターンが考えられますが、ベストなのはどれでしょうか?GET・POSTパラメータの処理と、その出力がほぼ同時に行われる場合では違いが顕在化しませんが、そうでないより一般的な場合に注意する点が知りたいです。 『パーフェクトPHP』330・334頁によると「出力時にエスケープ」とだけ書いてありますが、それに関連する詳細の記述やサンプルコードがないため背景知識があってそうなるのか、それとも単なる著者の思いつきなのか判断できません。 【ユーザからの入力時】にサニタイズしてしまうと、HTML出力以外

    脆弱性対策におけるhtmlspecialchars()の使用箇所について
    at_yasu
    at_yasu 2014/12/26
  • 『例えば、PHPを避ける』以降PHPはどれだけ安全になったか

    この記事はPHPアドベントカレンダー2014の22日目の記事です 。 2002年3月に公開されたIPAの人気コンテンツ「セキュアプログラミング講座」が2007年6月に大幅に更新されました。そして、その一節がPHPerたちを激しく刺激することになります。 (1) プログラミング言語の選択 1) 例えば、PHPを避ける 短時日で素早くサイトを立ち上げることのみに着目するのであれば、PHPは悪い処理系ではない。しかし、これまで多くの脆弱性を生んできた経緯があり、改善が進んでいるとはいえまだ十分堅固とは言えない。 セキュアプログラミング講座(アーカイブ)より引用 「PHPを避ける」とまで言われてしまったわけで、当然ながらネット界隈では炎上を起こし、現在はもう少しマイルドな表現に変わっています(参照)。 稿では、当時のPHPの状況を振り返る手段として、この後PHPセキュリティ機能がどのように変化

  • PHP 開発でも Grunt を使う - ngyukiの日記

    PHP Advent Calendar 2013 in Adventar の3日目です。 前日は @matsubo さんの コピペで出来るComposer導入 でした。Composer、私も使ってます。 Grunt とは Node.js で作られた色々な作業を自動化するためのツールです。 普通は Node.js での開発や js とかのフロントエンド開発に使われますが、PHP での開発でもわりと便利です。 PHP のための Grunt プラグインも色々あるので、とりあえず次の2つだけ使ってみます。 grunt-phpunit grunt-php 前提 php や node や npm はあらかじめインストールしておいてください。 ソースとテストの準備 とりあえず phpunit が実行できるソースツリーを用意します。phpunit は今風に composer でインストールします。 $ f

    at_yasu
    at_yasu 2014/12/16
    自動化ばんざい
  • Docker Hub 公式 PHP イメージで、複数バージョンの PHP コンテナを起動する

    Home > Docker | PHP > Docker Hub 公式 PHP イメージで、複数バージョンの PHP コンテナを起動する Docker Hub の 公式 PHP イメージで、PHP 5.4, 5.5, 5.6 のコンテナを起動します。 PHP Advent Calendar 2014 の 12 日目です。昨日は、PHPで簡単に華麗にDIとAOPをキメる でした。 Docker Hub には、公式でミドルウェアや言語のイメージがで公開されています。PHP もその一つで、現在は、5.4, 5.5, 5.6 が公開されています。また、バージョン毎に複数のタグが存在し、cli / fpm / apache(mod_php) といた構成違いのものが存在します。 https://registry.hub.docker.com/_/php/ ここでは、5.x-apache タグのイメージ

  • 自分流 Laravel 4 アプリケーションアーキテクチャ

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

  • 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
    at_yasu
    at_yasu 2014/12/08
  • PHPのカレンダー | Advent Calendar 2014 - Qiita

    About reserved postingIf you register a secret article by the day before the same day, it will be automatically published around 7:00 on the same day. About posting periodOnly articles submitted after November 1 of the year can be registered. (Secret articles can be registered anytime articles are posted.)

    PHPのカレンダー | Advent Calendar 2014 - Qiita
    at_yasu
    at_yasu 2014/12/07
  • Disable GC when computing deps, refs #3482 · composer/composer@ac676f4

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Disable GC when computing deps, refs #3482 · composer/composer@ac676f4
    at_yasu
    at_yasu 2014/12/04
    (ヽ´゜ω゜)GCをオフにしたらパフォーマンスがかなり良くなってお祭り会場になった現場…
  • Composer を倍速にした、たった 1 行のコード

    まだ 12 月早々ですが、PHP ユーザに素敵なクリスマスプレゼントが届きました。 いまや使うのが当たり前となった Composer ですが、複雑な依存解決に実行時間がかかるのがネックでした。 これは日国内だけでなく、海外のユーザも同じで、皆がしょうがないと思いつつも、小さな不満を持ちながら使っていました。 そんな、ある�日、わずか 1 行のコードが追加されたことで、実行時間が、わずか半分になるという現象が起こりました。 Composer を倍速にするには? composer self-update を実行して、最新版にするだけです。 $ composer self-update 実際の効果 このコードの効果を見てみましょう。composer コマンドの --profile オプションを使って、実行時間と使用メモリ量を出力します。 $ composer update --dry-run

  • nightrain - PHP+WebでGUIアプリケーション開発 MOONGIFT

    各種プログラミング言語ではGUIアプリケーションを開発するための機能が提供されています。その多くはGtkを使っていたりするのですが、それを使ってアプリケーションがどんどん作られているという話は聞かれません。 しかしnode-webkitのような存在はサーバサイドのスクリプト言語にとって強力な後押しになるかも知れません。同様の組み合わせをPHPで実現するのがnightrainです。 nightrainの使い方 Mac OSXアプリの例。.appとして提供されています。 アプリの内容。index.phpが呼ばれるようになっています。 nightrainはPHP/HTML/JavaScript/CSSをアプリのガワでラッピングするソフトウェアです。Windows/Mac OSX/Linux向けにバイナリを提供します。PHPの実行エンジンとHTTPサーバを内包し、Web技術だけで作れるようになって

    nightrain - PHP+WebでGUIアプリケーション開発 MOONGIFT
    at_yasu
    at_yasu 2014/12/04
  • Codeception - PHP Testing framework - PHP unit testing, PHP e2e testing, database testing

    User_Centric_Tests Codeception provides high-level domain language for tests. Tests are represented as a set of user's actions. Learn More Browser_Testing Tests can be executed using Firefox, Chrome, Safari or Cloud Testing services with Selenium WebDriver. Browser can be emulated with HTTP-requests through CURL with PhpBrowser. Learn More Framework_Testing Tests can be executed inside a PHP frame

    at_yasu
    at_yasu 2014/11/21
    ほぉぉ
  • Yii Framework 2.0 リリース記念勉強会 資料 - なんたらノート第三期ベータ

    第19回関西PHP勉強会 Yii Framework 2.0 リリース記念勉強会 の資料はこちらです。 だいぶあおり気味なのは、一般公開を意識せずに書いているためです。その場にいる人向けに、今日はこういう勉強会なので空気読んでね、というのが入っているのをご了承ください。 Yii 2.0 とは ベータリリース記念 第一回勉強会の資料 https://gist.github.com/tanakahisateru/cf8ef578d7ea24ea429a ※ イベントまわりでちょっとオススメじゃない書き方があります 過去の発表やブログなど http://www.slideshare.net/tanakahisateru/phpcon-2014yii http://image.slidesharecdn.com/yii-121012040114-phpapp01/95/yii-31-728.jpg

    Yii Framework 2.0 リリース記念勉強会 資料 - なんたらノート第三期ベータ
  • PHP: rfc:php7timeline

    With key decisions about both the version number and the engine for PHP 7 behind us, it's time to define an agreed-upon timeline so that all contributors can align around it. The purpose of this RFC is to define a one year timeline for the delivery of PHP 7.0, with a projected release date of November 2015. As the competitive landscape for PHP is evolving, the proposal is to shorten that timeline

    at_yasu
    at_yasu 2014/11/20
    GA/Releaseは2015/10予定かー
  • PHP 5.6系、5.5系、5.4系最新版登場

    PHPデベロップメントチームは10月16日(米国時間)、「PHP: Hypertext Preprocessor - PHP 5.6.2 is available」において、PHP 5.6系の最新版となる「PHP 5.6.2」を公開したと伝えた。 CVE-2014-3668、CVE-2014-3669、CVE-2014-3670などに関連した4つのセキュリティ関連バグを修正したバージョンとされており、すべてのPHP 5.6ユーザーは同バージョンへアップグレードすることが推奨されている。 PHPデベロップメントチームは同日、「PHP: Hypertext Preprocessor -PHP 5.5.18 is available」において、PHP 5.5系の最新版となる「PHP 5.5.18」を公開したことも伝えた。いくつかのバグが修正されているほか、PHP 5.5.17で発生していたOpe

    at_yasu
    at_yasu 2014/10/25
    SecurityFix有り