タグ

PHPに関するpaselaのブックマーク (264)

  • ZendFramework2を使う際に参考にしたいサイトのまとめ|プログラム|Nullyのぶろぐ

    参考というほど参考って感じはしないけど、ZF2使おうかなー?と考えている人たち用にこのへん見てみるといいかも!なのをまとめてみました。 Zend Framework2 言わずもがな今のところの公式ページ。 ZF2 Packages ZF2をインストールするための手順などが掲載されています。 ZF2 Programmers Reference Guide ZF2からのリファレンスです。 ZF2 Wiki wikiです。 ZF2 – github githubにおいてあるZF2のソース。 ZendSkeltonApplication ZF2アプリケーションのスケルトンまとめです。 ZendSkeltonModule ZF2アプリケーションに組み込むためのモジュールスケルトンです。 ZF2 Module ZF2のすでに作成されているモジュール一覧です。 こんなに作られてるとは思わなかったですね…

  • phpenv + php-build を使って 5.3 と 5.4 を共存させつつ php-fpm を使う - 肉とビールとパンケーキ by @sotarok

    っていう話なんですが、前提として、 phpenv + php-build は他にも多くの方が語ってるので、そちらを参考に。いやむしろ僕も参考にさせていただきました、ありがとうございます、いくら安いとはいえこれで PHP 5.4 のためにVPS1台借りるとかってことがなくなってよかったです。というか @yuya_takeyama さんのおかげですありがとうございます。 php-buildPHP 5.4.0 beta1 をビルドする - Born Too Late phpenv で複数の PHP 環境を管理する - Born Too Late なんですが、えーっと、作るのはだいたいWebアプリで、cli の php が複数バージョンいれられるのは大変嬉しいけどそれだけだと PHP 5.4 なら built-in server があるからいいけど PHP 5.3 の開発とか困るねってことで

    phpenv + php-build を使って 5.3 と 5.4 を共存させつつ php-fpm を使う - 肉とビールとパンケーキ by @sotarok
    pasela
    pasela 2012/05/22
  • Loading...

  • PHPのロケールに関するまとめ - hnwの日記

    5/3 17:45追記:t_komuraさんに指摘いただいた関数と、さらに僕が調べ直したものを含め、「ロケール設定に従う関数一覧」に25個ほど追加しました。かなり見落としがありましたね…。 PHPのロケール*1まわりについて調査したので、これをまとめてみます。 この記事は「ロケールの影響を受ける関数 - Sarabande.jp」を掘り下げたものです。masakielasticさん、ナイスな記事をありがとうございます。 PHPの文字列型と文字エンコーディング 他のモダンなLL言語と異なり、PHPは文字列の文字エンコーディングに関して何も仮定せず、単なるバイト列として管理しています。つまり、文字エンコーディングの取り扱いは各関数の実装に委ねられています。 下記の通り、これはマニュアルにも記述があるのですが、実に残念なことです。 残念ながら、PHP の各関数が文字列のエンコーディングを判断する

    PHPのロケールに関するまとめ - hnwの日記
    pasela
    pasela 2012/05/02
  • 規模別PHPUnitでのテストの書き方いろいろ - Architect Note

    最近になってPHPUnitをちゃんと使ってユニットテストを書くようになってきたのですが、まだまだTipsが足りないと感じます。個人的に実践している書き方をいくつか並べてみます。 追記:最初、シェバングと書いていましたが、オプションを渡せる数が決まっていたりOSによっては動かなかったりとあまり便利でないことがわかりました。。phpunit.xmlを書いた方がいいかも。 ちょっとしたテスト → シェルスクリプト化する PHPUnitは高機能なのですが、いかんせん最初の障壁が高いと思います。とにかく気軽に書きたいなら、シェルスクリプトを作って単独ファイルで実行できるようにするといいです。 #!/bin/sh phpunit --colors *Test.php # ↑オプションを書き並べておく <?php class SampleTest extends PHPUnit_Framework_Te

    規模別PHPUnitでのテストの書き方いろいろ - Architect Note
  • Blogger

    Google のウェブログ公開ツールを使って、テキスト、写真、動画を共有できます。

  • RecursiveTreeIteratorでtreeコマンドを実装する

    Qiitaに投稿した内容なんですが、もうちょい詳しく書いてみます。 treeコマンドというのは、ディレクトリの一覧をアスキーアートでわかりやすく表示してくれるコマンドです。 $ tree -d php-XML_Builder/ php-XML_Builder/ |-- lib | `-- XML | `-- Builder `-- test `-- coverage OSによっては標準で入っていないことがあるので、Iteratorの勉強がてら、これをPHPで実装する方法を考えてみました。 と言っても、treeコマンドのために生まれてきたようなRecursiveTreeIteratorというクラスが既にあり(PHP5.3以降)、これを使えばかなり簡単に実装できます。 ■処理の流れ RecursiveDirectoryIteratorで目的のディレクトリをイテレーターにする 必要に応じてRec

    RecursiveTreeIteratorでtreeコマンドを実装する
    pasela
    pasela 2012/01/20
  • PHPでHTTPレスポンスコードを返すときPHP_SAPI分岐は要るのか - なんたらノート第三期ベータ

    こたえは「たぶん要らないんじゃないの」です。はいおわり、というのでは何の話かわからないので、以下に詳しく書いておきます。 PHPのマニュアルで header() 関数を調べるとこんなことが書いてありました。 特殊な header コールが 2 種類あります。最初のものは、 文字列 "HTTP/" から始まる全てのヘッダ (大文字・小文字は区別されません) です。 このヘッダは、送信する HTTP ステータスコードを示すために使用されます。 例えば、存在しないファイルへのリクエストを処理するためにある PHP スクリプトを使用するよう (ErrorDocument ディレクティブにより) Apache を設定する場合、 そのスクリプトが正しいステータスコードを返すようにする必要があります。 < ?php header("HTTP/1.0 404 Not Found");FastCGI の場合

    PHPでHTTPレスポンスコードを返すときPHP_SAPI分岐は要るのか - なんたらノート第三期ベータ
    pasela
    pasela 2012/01/17
  • WebスクレイピングライブラリGoutteで遊んでみる - hnwの日記

    新年あけましておめでとうございます。今年もボチボチやっていきます。 稿ではPHP製のWebスクレイピングライブラリGoutteを紹介します。 Goutte(グット)とは Goutteは必要十分な機能を持ったWebスクレイピングライブラリです。そもそもWebスクレイピングというのは、外部Webページから必要なデータを取ってくるくらいの意味です。つまり、GoutteはWebスクレイピングを簡単に行う道具だと考えればいいでしょう。 具体的には、GoutteはWebクローラとHTMLパーサを組み合わせたようなものです。Cookieやフォームの扱いなどWebブラウザとしての機能は一通り揃っていますし、CSS風の要素指定もできるなど、機能面では他のライブラリと遜色ないように感じます。 さらに僕個人がGoutteに期待している点は、安定性とロングサポートです。Goutteは主要機能をSymfony2お

    WebスクレイピングライブラリGoutteで遊んでみる - hnwの日記
  • Yiiフレームワークでもっと理解したいMVCの話 - なんたらノート第三期ベータ

    2011年内に書ききれなかったトラックバックです。あけましておめでとうございました。 PHPのアドベントカレンダーに Ruby on Rails と CakePHP と Django と Symfony2(*1.x とは別物なので2と明記) の特長がうまくまとまってるいいエントリが書かれていました。 フレームワークで語るMVCの話 : PHP Advent Calendar #19 - basuke の日記 で、Yii をネタに加えて、勝手に追っかけたいと思います。Yii を題材にしますが、だからみんな Yii を使えという話ではなく、MVCフルスタックフレームワークは Yii から学ぶことがいっぱいあるという話です。 Yii の第一印象はよりオブジェクト指向的な CakePHP でした。config フォルダ以下のファイルに array で設定を書いて、models と controll

    Yiiフレームワークでもっと理解したいMVCの話 - なんたらノート第三期ベータ
  • 2012-01-06

    この記事は"Zend Framework 日めくり Calendar 2012"の「Zend Framework2 beta2 を触ってみる。 (featuring EventManager)」として書きました。 Zend Framework 2.0もbeta2がリリースされ、近くRCそして今春には正式リリースになるそうです。 個人的な印象ですが、ZF1で懸念していた多くの設計上の問題が、ZF2では改善されており、新しいfeatureを追加して別のフレームワークになるのではなく、フレームワークの品質向上に向けた一貫した改善プロセスを踏めているようです。 今日は、ZF1からZF2への変更点の中で、MVCレイヤーにおける変更点とその鍵になるEventManagerに焦点を当て、ZF2の理解に役立つドキュメントやその他リソース、最後にSkeletonアプリを用いたquick startのログをご

    2012-01-06
  • Zend Framework その7年 (前編)

    Zend Framework その7年 あけましておめでとうございます。 Zend Framework 日めくり Calendar 2012の1日目としてお送りします。 この日めくりカレンダー、前月に流行ったAdventカレンダーの、アイデアフォーク(パクリ)となっております。 記事書いていただける方を募集中です。ぜひatndへのリンク先からご登録ください。 以下は前編としてお送りします。 なお、この記事はかなり書きなぐりでつづっており、間違いがありましたらご一報ください。 Zend Framework って? この記事をご覧になる方はある程度予備知識がある方が多いと思いますが、 改めてZend Framework(以下、ZFと表記)についてご紹介します。 ZFの概要については以下の記事がよく参照されてるかと思います。 http://framework.zend.com/manual/ja

    Zend Framework その7年 (前編)
    pasela
    pasela 2012/01/03
  • trait時代のライブラリ設計を予想してみる #php5_4

    この記事はPHP5.4 Advent Calendar 2011の23日分です。 trait自体はすでに10日目の@tpyamamotoさんによるTRAITでデザインパターン再考でも取り上げられていますが、目玉機能なのでもう一回ネタにしちゃいます>< おさらい:traitとは 相変わらず公式マニュアルが充実しまくっているのでそちらを見た方がいいのですが、抜粋するとこんな感じ。 PHP5.4の目玉機能 多重継承を安全に行えるよう導入された概念 traitはプロパティ・メソッドを持てる traitは定数を持てない trait自体はインスタンス化できない classを継承してtraitを作ることはできない interfaceを実装してtraitを作ることはできない traitを継承してtraitを作ることが可能 classは複数のtraitを継承して実装を再利用できる traitはclassでは

    trait時代のライブラリ設計を予想してみる #php5_4
    pasela
    pasela 2011/12/25
  • PHPとgoto文 (PHP Advent Calendar 2011 24日目)

    PHP Advent Calendar 2011の24日目です。 前日はbornknow108さんのPHPでIPMessangerでした。 何を書いてもいいとのことなので、PHPの黒歴史ことgoto文についてまとめてみます。 goto文とは goto文は、プログラム中の任意の位置にジャンプする構文です。処理を先に進めたり、戻ったりすることができます。 echo 1; goto third; echo 2; third: echo 3; //→13と表示され、2は表示されない gotoはとても低レベルな命令であり、これとif文さえあればほとんどの論理構造は書けてしまいます。要は強力すぎるため、gotoを多用して書くと大変読みにくいプログラムができあがります。 この件はDijkstra先生の論文「Go To Statement Considered Harmful」で有名になりました。プログラ

    PHPとgoto文 (PHP Advent Calendar 2011 24日目)
    pasela
    pasela 2011/12/25
  • 素のPHPをテンプレートエンジンとして使うときのコーディング規約

    プログラムとしてPHPを書くときのコーディング規約は、PEARやZendなど代表的なものがたくさんありますが、テンプレートエンジンとしてPHPを使う場合にはそのまま適用しにくいものです。 テンプレートエンジンのコーディング規約って、検索してもあまり見つからなかったので、個人的に採用しているものを晒してみます。あんまり語る人を見たことがないので、「俺はこうしてるよ」とか「ここキモくね?」とかご意見いただけるとうれしいです。 目指すところ 複雑なロジックをテンプレートに書かない / 書けないように規約で縛る 少しでも読みやすさを追求する できあがりのHTMLの美しさも追及する <%= $this->doctype() %> <html> <head> <%= $this->headMeta() %> <%= $this->headLink() %> <%= $this->headTitle()

    素のPHPをテンプレートエンジンとして使うときのコーディング規約
    pasela
    pasela 2011/12/15
  • DBのパスワードをapplication.iniから取り除く(Zend Framework)

    Zend_Application_Resource_Dbを使うと、Zend_Dbの設定をapplication.iniに書くだけでZend_Dbの初期化ができるようになります。 [production] resources.db.adapter = "Pdo_Mysql" resources.db.params.dbname = "hoge_db" resources.db.params.host = "www.example.com" resources.db.params.username = "app" resources.db.params.password = "password" 設定ファイルに書けるということは、アプリケーションの実行環境(production / development)に応じて接続するDBの名前を変えたり、接続先hostを変えたりできるということです。いち

    DBのパスワードをapplication.iniから取り除く(Zend Framework)
    pasela
    pasela 2011/12/15
  • PHP5.4時代のprivateメソッドテスト手法 #php5_4

    PHP5.4 Advent Calendar 2011の7日目です。昨日は@madapajaさんの「PHP5.4+ で開発が行われている BEAR.Sunday フレームワークを動かしてみる」でした。 さてさて皆さん、ユニットテストしてますか? PHPもテストのライブラリが充実してきており、カバレッジ100%に情熱を燃やしている方も多いことでしょう。 ユニットテストで困るのが、private/protectedメソッドです。外から呼べないので、普通の方法ではテストできません。(protectedは適当なダミーのサブクラスを作ってそこからテストできますが、ちょっと面倒です。) まあ当然です。外から呼べないようにprivateにしているので、簡単に呼べたら逆に困るわけです。しかしながら、privateメソッドも外から呼んでテストできた方が開発ははかどるでしょう。この記事ではPHPでprivat

    PHP5.4時代のprivateメソッドテスト手法 #php5_4
    pasela
    pasela 2011/12/15
  • apache の FastCGI(mod_fastcgi) + PHP-FPM で phpを動かしてみる(CentOS,ScientificLinux編) | レンタルサーバー・自宅サーバー設定・構築のヒント

    apache の FastCGI(mod_fastcgi) + PHP-FPMphpを動かしてみる(CentOS,ScientificLinux編)

  • PHP フレームワークの「FuelPHP」がスゴすぎる - A Day in Serenity @ kenjis

    新しいことを勉強して、久々に心底感動しました。 Twitter である方が Fuel についてつぶやきをしているのを拝見し、この時初めてその存在を知りました。。 PHP の新しいフレームワークで、複数のフレームワークのいいところを集めたものということだったので、ちょっと触ってみるかとダウンロードしてドキュメントを読みながら Hello World! を作ってみる。すると・・・ こ・・これはすごい・・ なにがすごいって、これまで私は「CodeIgniter」を超愛用していました。CodeIgniter は、もちろんそのほとんどがすごくいいのですが、若干だけ不満があったのです。しかし、FuelPHP では CodeIgniter の好きなところはそのままに、不満が全部吹っ飛んでいたのです。 では、その全貌をご覧入れましょう。 [広告] FuelPHP 入門書の決定版が発売されました。詳しくは、

    PHP フレームワークの「FuelPHP」がスゴすぎる - A Day in Serenity @ kenjis
  • FuelPHP › A simple, flexible, community driven PHP5.3 framework.

    The Fuel PHP Framework is a fast, simple and flexible PHP 5.4+ framework, born from the best ideas of other frameworks, with a fresh start! Version 1.8.2 is a bugfix release, but includes quite a few improvements as well. The most important one: a fix for security issue SEC-CORE-009!. Have a look at the changelog to see what has been fixed or improved. Discover If you are new to the PHP framework