Please remember this entry will be public in the community library. This is not your personal regex library! To save, access and manage your personal entries, please go to the account page instead.
CodeIQ中の人、millionsmileです。 PHPメンターズの後藤秀宣さん出題の『オブジェクト指向的FizzBuzz』問題の解説記事です! PHPは、開発言語別の求人数ランキングで2位であります(出典)。さらには、PHPが書けてオブジェクト指向がわかるエンジニアへの企業ニーズは高いものの、実際は、まだまだ層が薄いということもあり、今回の出題へ、となりました。 ぜひ解説記事を読んで、イケてるオブジェクト指向がわかるPHPエンジニアをめざしてみてはどうでしょう。 以下、問題文です。 FizzBuzz問題を解くアプリケーションを実装しているとします。 ★FizzBuzz問題とは? 1, 2, 3, ・・・という入力に対して3で割り切れる場合は「fizz」、5で割り切れる場合は「buzz」 3でも5でも割り切れる場合は「fizzbuzz」、それ以外は数値をそのまま出力する PHPコードは次
複数のWebサーバでロードバランス環境を構築する際には、セッション情報の保持を考慮しなければならない。初期設定のPHPは、セッション情報をファイルとして保持しているため、異なるWebサーバに処理が割り振られるとセッション情報が消失してしまうからだ。こういった環境においてセッションを維持する方法は2つある。 セッション維持方法 同じユーザは同じサーバに割り振る セッション情報をサーバ間で共有する 1の手法は、Webサーバに手を加えなくて良い反面、Webサーバが故障した場合はセッション情報が失われる。2の方法はセッション情報の共有コストが発生するが、サーバ故障による障害を防げるし、負荷状況に応じて動的にWebサーバの数を増減させることもできる。そこで、2の方法をつかってセッション情報の共有を試してみた。幸い、PHPにはmemcachedを用いたセッション管理機能がある。この機能を適切に設定する
さて夏がやってきました。夏と言えばPHPということで、昨年に引き続き、最近のPHP事情をご紹介。 1. PHP5.4リリース PHP5.4が2012年3月にリリースされました。 Traits や Short array syntax(配列の短縮構文)、array dereferencing(foo()[0]) などのPHP言語拡張、PHPコマンドで起動するビルトインサーバ、そしてパフォーマンスの改善など大きな変更が加えられています。 言語自体の機能追加も注目ですが、ビルトインサーバは多くの人にとってメリットになるでしょう。これを使えばPHPアプリケーションの動作確認のためにApacheやnginxなどのhttpdサーバを自分のPCに入れる必要はありません。 下記のようなコマンドを打つだけで、ビルトインサーバが起動します。新しいフレームワークやライブラリ、アプリケーションを試してみたい時に手
Welcome There’s a lot of outdated information on the Web that leads new PHP users astray, propagating bad practices and insecure code. PHP: The Right Way is an easy-to-read, quick reference for PHP popular coding standards, links to authoritative tutorials around the Web, and what the contributors consider to be best practices at present. There is no canonical way to use PHP. This website aims to
Register now for Axway Summit 2024 and get energized to accelerate your digital transformation. Learn More Aptana Studio 3 is an open-source web development IDE, and while we are no longer actively maintaining the repository, it is still open-source and public so if you wish to download Aptana Studio 3 you can do so on GitHub.
JS BinはWebブラウザ上でJavaScriptとHTMLコードを編集しつつ、その結果をプレビューできるエディターです。 JavaScriptは単体で使うというよりもHTMLと組み合わせて使うことのが多いかと思います。そんな時にWebブラウザ上でコードを試しためし実行できるのがJS Binです。 デフォルトの表示です。左側がJavaScript、右側がHTMLとなっています。 レンダー表示です。先ほどのJavaScriptとHTMLを合わせて実行した結果です。 右側にリアルタイムプレビューを追加しました。JavaScriptを修正すると即座にプレビューに反映されます。 HTMLにJavaScriptライブラリを追加できます。 jQueryを追加した場合です。HTMLソースにscriptタグが追加されています。もちろんJavaScript側もjQueryの関数が使えるようになります。 保
新しいことを勉強して、久々に心底感動しました。 Twitter である方が Fuel についてつぶやきをしているのを拝見し、この時初めてその存在を知りました。。 PHP の新しいフレームワークで、複数のフレームワークのいいところを集めたものということだったので、ちょっと触ってみるかとダウンロードしてドキュメントを読みながら Hello World! を作ってみる。すると・・・ こ・・これはすごい・・ なにがすごいって、これまで私は「CodeIgniter」を超愛用していました。CodeIgniter は、もちろんそのほとんどがすごくいいのですが、若干だけ不満があったのです。しかし、FuelPHP では CodeIgniter の好きなところはそのままに、不満が全部吹っ飛んでいたのです。 では、その全貌をご覧入れましょう。 [広告] FuelPHP 入門書の決定版が発売されました。詳しくは、
第3引数を指定していない場合の影響前述のように、htmlspecialchars関数の第3引数を指定していない場合、PHP5.3までは、文字エンコーディングがISO-8859-1が指定されたとみなされます。この場合、入力内容にかかわらず不正な文字エンコーディングと判定されることはありません。したがって、文字エンコーディングのチェックが働かない代わりに、エラーになることもありませんでした。 これに対して、PHP5.4の仕様により文字エンコーディングがUTF-8とみなされた場合に、Shift_JISやEUC-JPの2バイト文字が入力されると、高い確率で「UTF-8として不正」というエラーになり、htmlspecialchars関数の出力は空になります。つまり、プログラムが正常に動作しません。 htmlspecialchars関数の第3引数を指定しておらず、内部文字エンコーディングがShift_
Please excuse this self-serving, miscellaneous post, but I’ve just got to purge all of these code snippets and scraps collected over the years. Whenever I update this site, I place any removed/unused code snippets into a giant note file for future reference, just in case. There’s all sorts of different types of code and snippets that just keep growing and growing and.. and finally it gets to a poi
PHPExcelはExcelファイルの読み書きを行うPHPライブラリ。PDF/HTML出力にも対応。 PHPExcelはPHP製のオープンソース・ソフトウェア。業務システムを開発していて必ず発生するのがExcelのような表形式ファイルの取り込みだ。大抵はCSVに変換してもらって取り込むだろう。だがユーザが変換を忘れてExcelを読み込ませてしまうことも度々だ。 PHPで出力できる さらにシステムから資料を出力する際にもCSVをダウンロードして手作業で修正して…という手間をユーザにとらせることになってしまう。そんな時代はもう古い、PHPExcelを使ってリッチなExcelファイルをそのままやり取りしよう。 PHPExcelはExcel 2007をベースとし、5.0/95/97以降のファイル形式の読み込みにも対応している。Excel 2003のXMLフォーマットも扱える。さらにOpenOffi
よく、Apacheで読み込まれている不要なモジュールを解除すればApacheが軽くなるよ!みたいなエントリを見たりしますが、実際問題どれぐらいプロセスが軽くなるのかをメモリの使用量の観点から調べてみました。 ちょっと色々疑問が出たりして曖昧な部分も多いのですが。 調べるにあたって、下記のエントリを参考にさせていただきました。 Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる @ naoyaのはてなダイアリー ※ 上記エントリ内で紹介されているShibuya.pmの発表資料が特にわかりやすかったです。 apacheのMaxClientを算出するスクリプトを作った @ webネタ で、Apacheのメモリ使用量は/proc/PID/smapsをみて、Apacheの個々のプロセスにおけるRss、Shared_Clean、Shared_Dirtyの値から導
PHPフレームワークの速度比較では、HelloWorldを表示するのみの単純なアプリを用いた計測を元に比較表が作られることが多いです。特に後発のフレームワークは分かりやすい特徴付けとして速度をアピールする傾向にあるため、その比較表を元に N倍速いというアピールをしています。 PHPフレームワークを使うということは、DBまで絡めたWebアプリを作ることがほとんどなため、HelloWorldアプリの比較よりは、DBからレコード取得して表示するまでの処理速度を比較したほうがより現実に近い指標になると思います。特にCakePHP1系ではDBのデータ取得も独自ドライバになっていますし、モデルの処理も重いのでそこまで含めて他と比較したほうが良いと思ってます。 今回はDBから1レコード取得して表示するという簡単なアプリで各フレームワークの速度を評価しました。フレームワークに備わっているViewキャッシュ
MyWebSqlはAjaxを多用した今風のUIを使ったMySQL管理ツール。 MyWebSqlはPHP製のオープンソース・ソフトウェア。PHPと言えばMySQL、その二つの組み合わせから生み出されたphpMyAdmin。LAMPスタックなんて言葉が生み出されたのにphpMyAdminの優秀さがあったことは否定できない。それくらい誰しもが使っているソフトウェアだ。 データ一覧 だが長い年月のうちにUIは古いものになり、ちょっと時代が変わってきているかという気がしなくもない。そこで今のWebに合わせたMySQL管理ツールを紹介しよう。それがMyWebSqlだ。 MyWebSqlはWebアプリケーション風のインタフェースに加えて、UIのデザインもポップで明るい配色になっていて使い勝手が良い。左側にデータベースの一覧、右側でデータの編集を行うスタイルはphpMyAdminと同じだ。さらに下にはSQ
ここ最近のPHP界隈では、興味深いニュースが続いています。最近PHPを追っかけていない人へ少しづつご紹介。 近頃、PHP界隈でホットなニュースを5つ、つまみぐいして見てみましょう。 1. PHP5.4.0-alphaリリース! PHPの次期バージョン、5.4.0-alphaがリリースされました。 まだ alpha1 ですが、すでに Traits や Array dereferencing support など様々な機能追加が行われています。 特に Traits は面白い機能で、いずれはこれを利用したフレームワークの登場が考えられます。ぜひ使ってみたい機能ですね。 今後、正式リリースに向けてさらなる新機能が追加されていくようなので、目が離せません。 PHP 5.4 alpha1 released 現状のPHP環境はそのままで、PHP 5.4 を試す PHP5.4 alpha1リリース! PH
Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く