タグ

phpに関するdannのブックマーク (67)

  • PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳)

    2016/10/31 PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳) PHP サーバーサイド この文書は@julienPauliさんによる記事「realpath_cache」の日語翻訳です。元々は@gilbiteさんがKLab社内向けに翻訳したものでしたが、日語では見たことがない指摘を含んでおり今でも有用だと考えたため、@julienPauliさんの了解を取った上で@hnwが修正・追記して公開するものです。 はじめに PHP に realpath_cache_get(), realpath_cache_size() という関数があることをご存じでしょうか? また、php.ini に realpath_cache から始まる設定項目があることは? realpath cache は知っておきたい極めて重要な概念です。 特に、コードの

    PHPにおけるシンボリックリンクを使ったデプロイの危険性について(「realpath_cache」和訳)
    dann
    dann 2016/11/01
  • PHP: The Right Way

    ようこそ 時代遅れの情報がウェブ上にあふれている。そんな情報を見たPHP初心者は戸惑ってしまうだろう。そして、まずい手法やまずいコードが広まってしまう。 そんなのはもうやめよう。PHP: The Right Way は気軽に読めるクイックリファレンスだ。PHPの一般的なコーディング規約、 ウェブ上のよくできたチュートリアルへのリンク、そして現時点でのベストプラクティスだと執筆者が考えていることをまとめた。 大事なのは、 PHPを使うための正式なお作法など存在しない ってこと。 このサイトの狙いは、はじめて PHP を使うことになった開発者に、いろんなトピックを紹介すること。 経験豊富なプロの人にとっても、これまで深く考えることなく使ってきた内容について、新鮮な見方を伝えられるだろう。 このサイトは、決して「どのツールを使えばいいのか」を教えるものじゃない。 いくつかの選択肢を示して、それぞ

    dann
    dann 2014/08/13
  • ZendOpcacheとAPCuではじめるハイパフォーマンスPHP - pixiv engineering blog

    先月末から一週間ほど旅に出ていたbokkoです。今回はpixivでのPHPのバージョンアップに関する取り組みの一部を紹介します。 pixivPHP pixivではWebアプリケーションの開発で主にPHPを利用しており、今のところPHP5.3とPHP5.4で動いている環境が混在している状態ですが、これをPHP5.5化するプロジェクトが進行中です。 オペコードキャッシュとユーザキャッシュによるPHPアプリケーションの高速化 pixivのようなPVの多いWebサイト(2013年10月現在で38億/月)をPHPで運用する場合、 アプリケーションのパフォーマンスという観点ではもちろんのこと、運用にかかるコストの面でも APCやZendOpcacheが提供しているようなオペコードキャッシュ機能は必須と言えます。 サーバスペックが高いマシン(CPUコア数が16とか24)を使っているということもあります

    dann
    dann 2013/10/15
  • PECL :: Package :: xhprof

    Scott MacVicar < scottmac at php dot net > (lead) [details] Kannan Muthukkaruppan < kannan at php dot net > (lead) [details] Venkat Venkataramani (developer) [details] Changhao Jiang (lead) [details] Haiping Zhao (developer) [details] xinhui long < longxinhui at php dot net > (lead) [details] XHProf is a function-level hierarchical profiler for PHP and has a simple HTML based navigational interfac

  • Tweak m1.small - misc notes

    (2015-07: 以下の内容は古いです。現状では php5.5 以降の Zend OPcache、apcu、さらに php7、HHVM 等の動きがあります) m1.small instance をしゃぶり尽くす AWS って on demand 的な使い方をした場合の課金や、ストレージ課金は驚異的に安価だとおもいますが、常時稼働が必要な instance の CPU 課金は(デフレスパイラル下の日に於いては)微妙に割高感があります。 その中で、2番目に低価格な m1.small でどこまで逝けるか を試してみるつもりです。 m1.small は Xen の CPU cap (割り当てCPU時間の制御) されており、AmazonCPU を盗まれています。B) # mpstat 00:00:00 AM CPU %user %nice %sys %iowait %irq %soft %

  • すぐれた PHP ライブラリとリソース

    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

    すぐれた PHP ライブラリとリソース
    dann
    dann 2013/04/26
  • 「8時間耐久 PHP構築の教室」を開催しました。 : candycane development blog

    今回も怒涛の8時間耐久という感じで、いつになくハードな内容になりました。 VPSを借りたりするとブログなどをみて見よう見まねで構築をする事もあるかと思いますが、ソースからPHPをビルドしてインストールするという流れを通じてPHPの動作原理や、はやりのnginx + php-fpmの構成を構築してWordPressを動かすというスパルタな感じの勉強会でした。途中、仮想マシンのMACアドレスの問題やmbstringの問題でapacheがクラッシュするなどの問題に直面しましたが、ひとまず西川さんがnginx + php-fpmWordPressを動かすというゴールには到達する事ができました。また副産物としてCでHello Worldを動かすという作業もしてみたのでビルドしてバイナリを作るという流れが身についたのかなと思います。これで4つ目の8時間耐久シリーズになったわけですが、希望があれば内容

    dann
    dann 2012/07/11
    nginx + php-fpm
  • GitHub - joonty/vim-phpqa: PHP QA tools for Vim

    The plugin is configured by default to automatically run the QA tools when a PHP file is saved. Therefore, save a file and the linter will run. If there is a syntax error, the offending line will be highlighted. Plus, a quickfix window opens to show the error and it's position in the file. If there are no syntax errors, PHP Code Sniffer and Mess Detector will run. These will require some configura

    GitHub - joonty/vim-phpqa: PHP QA tools for Vim
    dann
    dann 2012/05/01
  • 【レポート】第2弾!いろいろチューニングしてパフォーマンスを競うバトルイベント!「Tuningathon2」 #tuningathon : ゼロスタートの広報ブログ

    2011年10月05日12:14 【レポート】第2弾!いろいろチューニングしてパフォーマンスを競うバトルイベント!「Tuningathon2」 #tuningathon カテゴリ Tweet もうすっかり秋ですね!! (みなさん:そうですね!!) 急に寒くなったりして、風邪が流行っているようですが、 みなさんお大事になさってください。 さて今回のブログは、イベントレポートです! 2011年10月1日(土)に、主にインフラエンジニアを対象としたイベント 「Tuningathon(チューニンガソン)」の第2弾を開催いたしましたので、 今回は、その様子をお届けしたいと思います!! ※メディアスポンサーである技評様により記事としても公開されます。 今回のイベント参加者は、39名 35組(ペア4組含む)※参加率100%!! 当日無断キャンセルはありませんでした…!すごい!! あ

    dann
    dann 2011/10/09
  • チューニンガソンで優勝してきました : DSAS開発者の部屋

    7/9(土)にチューニンガソン というイベントに参加して優勝してきたので、その報告と、何を考えてどんなチューニングをしたのかを 記憶の範囲で公開したいと思います。 今回のチューニンガソンのお題は、WordPress(ja) + php + Apache + MySQL で、 ab を使って wp-comment.php 経由でコメントのポストをすることで計測が行われました。 MySQLとApacheを立ち上げたらWordPressが動く環境が渡され、そのWordPress自体は設定ファイルを含めて 改造が一切禁止、WordPressの実行をショートカットするチートも禁止です。 0. 試合前日 環境がAWSとAMI Linuxということは事前に公開されていたため、前日にAWSに登録して少しだけAMI Linuxを 触ってみました。yumベースだけどCentOSと違って結構新しいバージョンが用

    チューニンガソンで優勝してきました : DSAS開発者の部屋
  • VIM for a PHP developer at Thijs Lensselink's Blog

    For my coding work i mostly use Zend Studio. And i am a big fan of this IDE. But i also do a lot of work in the shell. And that asks for at least basic vim knowledge. My colleague is a big vim fan. And does most of his work in vim. So last week i was compiling a cheat-sheet for my self. And came across a slideshow of one of Andrei Zmievski‘s talks. This slide show got me inspired enough to start p

    dann
    dann 2011/04/25
  • Prove を quickrun する - Memo

    元ネタ http://d.hatena.ne.jp/ruedap/20110225/vim_php_phpunit_quickrun http://vim-users.jp/2010/09/hack172/ Perl スクリプトを書く時は テストランナーに Prove を使うのでそっちを設定する。 augroup QuickRunUnitTest autocmd! autocmd BufWinEnter,BufNewFile *test.php set filetype=php.unit autocmd BufWinEnter,BufNewFile test_*.py set filetype=python.unit autocmd BufWinEnter,BufNewFile *.t set filetype=perl.unit augroup END let g:quickrun_co

    Prove を quickrun する - Memo
  • WEBサービスを作るなら最低限覚えておきたいPHPのPEARモジュールまとめ:phpspot開発日誌

    (追記) 2/16 23時 いくつかのライブラリを追記しました。 WEBサービスを作るなら最低限覚えておきたいPHPのPEARモジュールまとめ。 家pearには560程のモジュールがあります(2011/2月現在)が、WEBサービスを作る上でよく使う物をまとめてみました。 これからPHPを使ってサービスを作ろうと思っている方は代替を使うことになると思うので参考にしてみて下さい。 php はインストール時点で既に多くの機能が備わっており、大体のことができてしまいますが、PEARを使うことで面倒なことがより簡単にできるようになります。 PEAR以外にも便利なライブラリはあるのですが、今回はあえて殆どをPEARサイトで公開されている物に絞ってご紹介します。 基的なパッケージ まず、汎用に使える便利なパッケージのご紹介です。 HTTP_Request2 url を渡してリモートのテキストを取って

    dann
    dann 2011/02/16
  • Openpear

    Openpear is a PEAR Repository Channel and Subversion Hosting Service. since November 2008 以前からお使いですか? 以前の Openpear をお使いだった方は、以下のコマンドを実行する必要があります pear channel-update openpear.org チャンネルを登録する pear channel-discover openpear.org 利用可能なパッケージをリストする pear remote-list -c openpear パッケージをインストールする pear install openpear/package_name バージョンや安定性を指定してパッケージをインストールする pear install openpear/package_name-1.0.0 pear insta

    dann
    dann 2010/12/26
  • 最強のJavaScript IDE「WebStorm」の姉妹品「PhpStorm」はPHP IDEとして最高だった ::ハブろぐ

    先に「WebStorm」について軽く言及 【コラム】イマドキのIDE事情 (94) 最強のJavaScript IDE「WebStorm」を試してみる | エンタープライズ | マイコミジャーナル 最強のJavaScript IDE 「WebStorm」を使ってみた | Web scratch 最強と称したのは自分じゃないのですが、「WebStorm」は最強らしいです。最強な割に、AptanaとかKomodo等と比べるとマイナー感が溢れているのですが、気のせいでしょうか。 WebStorm自身、いつの間にかJavaScript向けのIDEということになっていますが、実際はWebフロントエンド全般に適したIDEです。そのため、HTMLCSSについても、優秀な機能を備えています。とはいえ、HTMLCSSだけを取り扱う場合はIDEが縁遠い気もするので、実質JavaScriptでゴリゴリ開発す

    最強のJavaScript IDE「WebStorm」の姉妹品「PhpStorm」はPHP IDEとして最高だった ::ハブろぐ
    dann
    dann 2010/11/12
  • 本当に結構パーフェクトでした - 書評「パーフェクトPHP」 | GREE Engineering

    最近はWebSocketで遊びたくてしかたがないfujimotoです、こんにちは。今回は、日(2010/11/12)発売されている(はずの)待望の書籍、「パーフェクトPHP」の書評をお届けします。 僕は今週ひと足お先に献をいただいて目を通したのですが、様々なPHP関連の書籍で「こういうことにも言及してほしいなぁ」「このサンプルを鵜呑みにされてしまうと困るかも...」というところをきちんとカバーしていたり、最新版の仕様や、PHPを使い倒しているユーザの考え方が反映されていて、今までにない書籍だな、というのが第一印象で、初心者のかたから上級者のかたまで、全員が買って損はない(少なくとも、書店で手にとってみる価値はある)一冊だと思います。 これは、いずれもPHPのヘビーユーザであり、よいところもわるいところも知り尽くしている著者のかたがたが、執筆するにあたって最初に考えたであろう「既にPHP

    本当に結構パーフェクトでした - 書評「パーフェクトPHP」 | GREE Engineering
    dann
    dann 2010/11/12
  • これがWikipediaの裏側、知られざる大規模システムの実態「Wikipedia / MediaWiki におけるシステム運用」

    Wikipediaといえば世界で第5位の訪問者数を誇る巨大サイトですが、システム運営に携わる人間は世界でわずか6人、しかもこれはボランティア込みという恐るべき少人数で、第4位のFacebookのサーバ数が3万台を超えているのに対して、Wikipediaはわずか350台で運用している……などというような感じで、知られざる今のWikipediaの実態が「KOF2010」にて日行われた講演「Wikipedia / MediaWiki におけるシステム運用」で明かされました。 登壇したのはWikipediaを運営するWikimedia財団のエンジニアであるRyan Lane氏で、100席ある座席は満席になり、隣の中継の部屋まで人があふれているほどの盛況っぷりで、語られる内容もなかなか参考になることが多く、今後のGIGAZINEサーバにも活かせそうな内容でした。 というわけで、「Wikipedia

    これがWikipediaの裏側、知られざる大規模システムの実態「Wikipedia / MediaWiki におけるシステム運用」
  • れぶろぐ - [Zend] Zend_Loader_Autoloader クラスの正しい使い方

    ■ Zend_Loader_Autoloader クラスの正しい使い方 まずは結論を。 Zend_Loader_Autoloader クラスを用いる際には、 registerNamespace() メソッドは使わず、 setFallbackAutoloader(true) に設定しておくべきです。 Zend Framework 1.8 では、Zend_Loader_Autoloader というクラスが新設され、 従来の Zend_Loader::registerAutoload() メソッドは、 Zend Framework 2.0 以降では廃止される予定となりました。 ところが、Zend_Loader_Autoloader クラスを用いるようコードを書き換えてみると、 困ったことに、PEAR のライブラリや Revulo_View_Phtmlc のような独自クラスをオートロードしてくれま

    dann
    dann 2010/09/14
  • PHPのDateTimeクラス - Unknown::Programming

    PHPのDateTimeクラスは標準装備なのでお手軽で便利なのだけど、若干使い勝手が悪い。 なのでDateTimeを継承してちょっとした拡張をしとくと便利かと。 <?php class MyDateTime extends DateTime { function year () { return $this->format('Y'); } function month () { return $this->format('n'); } function day () { return $this->format('j'); } function hour () { return $this->format('H'); } function minute () { return $this->format('i'); } function second () { return $this->

    PHPのDateTimeクラス - Unknown::Programming
    dann
    dann 2010/09/14
  • PHP版Path::Class - Unknown::Programming

    え?あぁ。Perlerなら皆さんご存知のPath::Classですが、それのPHP版です。欲しかったので作りました。 以下使い方例。 <?php require_once 'Path/Class.class.php'; $dir = cdir(array('foo', 'bar')); # Path_Class_Dirオブジェクト $file = cfile(array('bob','file.txt')); # Path_Class_Fileオブジェクト print "dir: $dir\n"; # foo/bar print "dir: $file\n"; # bob/file.txt $subdir = $dir->subdir('baz'); # foo/bar/baz $parent = $subdir->parent(); # foo/bar $parent2 = $paren

    PHP版Path::Class - Unknown::Programming
    dann
    dann 2010/09/13