タグ

phpに関するw6500のブックマーク (53)

  • IT業界・エンジニアの転職ならTech Stars Agent

    技術に精通した コンサルタント が併走 経験豊富なアドバイザー 元ITエンジニア、元ゲーム企業人事、 IT会社役員、大手人材エージェント

    IT業界・エンジニアの転職ならTech Stars Agent
  • 何故 FuelPHP は流行っているのか? - A Day in Serenity @ kenjis

    Google グループの参加者が 200人を突破し、そろそろ巷でも流行っていると言われ始めた FuelPHP です。 (17:44 追記) CodeIgniter からの移行ユーザが多いのは事実ですが、それだけではありません。あと、この記事は CodeIgniter との違いを指摘したものです。 (12:48 追記) まったく流行っていない地域もあるようです。 FuelPHP は何故流行っているのか? その理由の 1つには、他のフレームワーク、とりわけ、CodeIgniter、Kohana、Yii とは違い、多くのユーザが全国的にいろいろな場所で FuelPHP に関する発表を行なっていることがあります。 slideshare から、おおざっぱに抜粋してみました。slideshare にもこれ以外のものもありますし、他の場所にもあります。貼り付けるスライドが多すぎると表示の確認で Fire

  • あらためてPHP5.3

    6. PHP5.3未満のソース <?php require_once 'OneByOnelibLog.php'; require_once 'OneByOnelibBasicController.php'; define('T_USER', 't_user'); class UserController extends BasicController { public function UserController() { $values = range(1, 50); array_filter($values, array('UserController', 'match')); } public static function match($value) { return ($value % 5 == 0); } } 7. PHP5.3のソース <?php namespace appc

    あらためてPHP5.3
  • エンコードマニアックス - 各種エンコードやハッシュを一発作成

    SHA-256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 SHA-384 38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b SHA-512 cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e

  • ウェブアプリのセキュリティをちゃんと知ろう

    ウェブアプリのセキュリティをちゃんと知ろう (毎週のハンズオン勉強会の資料) - Download as a PDF or view online for free

    ウェブアプリのセキュリティをちゃんと知ろう
  • CakePHPとnginx+memcachedで手軽にキャッシュを活用する

    nginx+memcachedがめちゃ気になったので試してみました。 元ネタは下記です。 A 53,900% speedup: Nginx, Drupal, and Memcache bring concurrency up and page load time way down | TechnoSophos nginxをリバースプロキシに利用した構成で、バックエンドの出力をmemcachedにキャッシュしておけば、次回リクエストではnginxがそのキャッシュを読み取ってそのまま出力してくれます。 つまりバックエンドにリクエストを経由させずにnginxから即出力するのでかなりの高速化が見込めるという優れものです。 リンク先ではバックエンドにDrupalを利用していたのですが、ここではCakePHPを利用してみます。 1. 全体構成 リバースプロキシにnginx(Port: 80)を使い、バ

  • もし『よくわかるPHPの教科書』の著者が徳丸浩の『安全なWebアプリケーションの作り方』を読んだら - ockeghem's blog

    たにぐちまことさんの書かれた『よくわかるPHPの教科書(以下、「よくわかる」)』を購入してパラパラと見ていたら、セキュリティ上の問題がかなりあることに気がつきました。そこで、拙著「体系的に学ぶ 安全なWebアプリケーションの作り方(以下、徳丸)」の章・節毎に照らし合わせて、「よくわかる」の脆弱性について報告します。主に、徳丸の4章と5章を参照します。 4.2 入力処理とセキュリティ 「よくわかる」のサンプルや解説では、入力値検証はほとんどしていません。しかし、入力値検証をしていないからといって即脆弱かというとそうではありません。徳丸でも強調しているように、入力値検証はアプリケーション要件(仕様)に沿っていることを確認するもので、セキュリティ対策が目的ではないからです。 「よくわかる」の中で、私が見た範囲で唯一の入力値検証は、郵便番号のチェックをするものです。以下に引用します(「よくわ

    もし『よくわかるPHPの教科書』の著者が徳丸浩の『安全なWebアプリケーションの作り方』を読んだら - ockeghem's blog
  • 色々なPHPフレームワークのパフォーマンスを比較 - cakephperの日記(CakePHP, Laravel, PHP)

    PHPフレームワークの速度比較では、HelloWorldを表示するのみの単純なアプリを用いた計測を元に比較表が作られることが多いです。特に後発のフレームワークは分かりやすい特徴付けとして速度をアピールする傾向にあるため、その比較表を元に N倍速いというアピールをしています。 PHPフレームワークを使うということは、DBまで絡めたWebアプリを作ることがほとんどなため、HelloWorldアプリの比較よりは、DBからレコード取得して表示するまでの処理速度を比較したほうがより現実に近い指標になると思います。特にCakePHP1系ではDBのデータ取得も独自ドライバになっていますし、モデルの処理も重いのでそこまで含めて他と比較したほうが良いと思ってます。 今回はDBから1レコード取得して表示するという簡単なアプリで各フレームワークの速度を評価しました。フレームワークに備わっているViewキャッシュ

    色々なPHPフレームワークのパフォーマンスを比較 - cakephperの日記(CakePHP, Laravel, PHP)
  • PHPUnit 3.4 Japanese Manual

    Welcome to PHPUnit! PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

    PHPUnit 3.4 Japanese Manual
  • コマンドラインからPHPマニュアルを見るpmanコマンド

    コマンドラインからPHPマニュアルを見ることができるpmanコマンドが登場しました。 manコマンドのようにコマンドラインからPHP関数やSPLのクラスについて調べることができます。 インストール pearコマンドでインストールします。 $ sudo pear install doc.php.net/pman 手元のMac OS X 環境では、/usr/bin/ に pman コマンドがインストールされました。 $ which pman /usr/bin/pman 使い方 pmanコマンドに調べたい関数名を指定します。例えば、array_map のマニュアルを見たいなら以下のように指定します。 $ pman array_map ARRAY_MAP(3) 1 ARRAY_MAP(3) array_map - Applies the callback to the elements of th

    コマンドラインからPHPマニュアルを見るpmanコマンド
  • PHP で Facebook アプリをつくろう

    はじめまして。今すぐ Follow すべき PHP 界のスーパーエンジニアの riaf です。 .. ごめんなさい調子に乗りました。はじめまして,ウェブ配信事業部開発チームの佐藤です。 オトバンクでは主に,パソコンの調子が悪くなった時に呼び出される簡単なお仕事や, FeBe に関係するインフラまわりからちょっとしたデザインまでやっています。スーパーエンジニアの宿命ですね。 今日は,話題の Facebook のおはなしをしようと思います。とはいっても「Facebook とは何ぞや?」みたいな話ではなくて,Facebook アプリの開発についてですよ! なにはともあれまずはアプリを登録 Developer のページから全てが始まります。 まずはアプリを登録してみましょう。右上の「+ Set Up New App」というボタンを優しく押します。 そうすると,アプリケーション名を求められます。

  • ドメイン駆動式ソフトウェアの育て方 - Digital Romanticism

    レッツゴーデベロッパー2011での発表原稿とスライド 導入 2011年05月28日「レッツゴーデベロッパー2011@仙台」が開催されました。このイベントのテーマは「共有と交流」。"「共有」には、最新技術、知識、復興への想い、それぞれの決意を共有することを、「交流」には、東北と東北圏外のデベロッパーやコミュニティ同士の交流を深めることを込めて。" このイベントにてDDDセッションに登壇させて頂きましたので、そのときの発表原稿とスライドを公開致します。なお、当日はワークとして参加者の方にペアモデリングを行って頂きましたが、このドラフトではその部分を割愛しています。 スライドはこちら また映像はこちらで公開して頂いています。 さて今年4/9にDDD日語版が出版されました。それから2ヶ月弱、翔泳社様から、はやくも増刷のお知らせを頂きました。多くの方々とおかげと深く感謝しています。さて、この増刷が

    ドメイン駆動式ソフトウェアの育て方 - Digital Romanticism
  • What is Dependency Injection? |Articles - Fabien Potencier

    This article is part of a series on Dependency Injection in general and on a lightweight implementation of a Container in PHP in particular: Part 1: What is Dependency Injection? Part 2: Do you need a Dependency Injection Container? Part 3: Introduction to the Symfony Service Container Part 4: Symfony Service Container: Using a Builder to create Services Part 5: Symfony Service Container: Using XM

    w6500
    w6500 2011/06/04
  • 実は厄介、ケータイWebのセッション管理

    実は厄介、ケータイWebのセッション管理:再考・ケータイWebのセキュリティ(3)(1/3 ページ) “特殊だ”と形容されることの多い日の携帯電話向けWebサイト。そこには、さまざまな思い込みや性善説の上しか成り立たないセキュリティが横行しています。連載は、ケータイWebの特殊性をていねいに解説し、正しいケータイWebセキュリティのあるべき姿を考えます(編集部) 「Cookieを使えない端末」でセッションを管理する方法は? 第2回「間違いだらけの『かんたんログイン』実装法」ですが、多くの方に読んでいただきありがとうございました。 今回は、前回に引き続き架空のSNSサイト「グダグダSNS」のケータイ対応を題材として、ケータイWebのセッション管理の問題点について説明します。携帯電話向けWebアプリケーション(ケータイWeb)のセッション管理は、かんたんログインよりも対策が難しく、厄介な問

    実は厄介、ケータイWebのセッション管理
  • PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト:phpspot開発日誌

    PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイト 2011年05月23日- Benchmarks PHPを使う上で、どう書けば高速になるか?をその場で試せるベンチマーク結果満載なサイトがあるようです。 同じことをやるのに複数の書き方があったりしますが、2つの書き方を並べてそれぞれどちらがどれだけかかったかという結果が記載されていて面白いです。 で、そのいくらかかったか?という秒数も、ページ上でリアルタイムに計算され、リロードすると実行され、実行タイムが表示されます。 サイトの作者環境による比較ではなく、その場で動いて何度も試せるので自分でその差を確認できるのがGood。 個人的には長年PHPをやっているのですが知らなかった物も多々あり、非常に勉強になりました。 1回のロードでは結果が変になることもあるので、サーバの負荷にならない程度に数回確認させてもら

  • 独学PHP はじめよう、PHPでオブジェクト指向

    クラスを理解するうえで重要になってくるのがオブジェクトです。クラスとオブジェクトは似て非なるものです。オブジェクトとはクラスを元にしてつくられたコピーを指します。クラスでは「データを保持できる」という性質をもっているため、複数の処理でひとつのクラスにアクセスした場合、データの上書き(不整合)を引き起こす危険があります。そのため、処理に応じクラスのコピーを作成し、そのコピーに対してアクセスすることが考えだされました。実際に使う場合には、まずクラス体には手を加えず、オブジェクトと呼ばれるクラスのコピーを作成しそれを処理の対象としてプログラムを組んでいきます。 TOP インスタンス化 クラスのコピー(オブジェクト)を生成することを「インスタンス化」といいます。インスタンス化とは、クラスを扱うための「自分専用の領域」を確保する行為ともいえます。PHPでは、クラスのインスタンス化を次のようにnew

  • PHPUnitでユニットテスト

    開発の全工程の中で、あまり人気がないのがテスト工程だ。ソフトウェアの品質を証明するためのテストは、なぜ低く見られてしまうのか(編集部) xUnitという名称のテスティングフレームワーク 第1回「ユニットテストはなぜ必要なの?」では、ユニットテストの必要性を解説しました。今回は実際にテスティングフレームワークを使用して、テスト駆動開発を進め、その必要性と重要性を体験してみましょう。 ユニットテストを自動化するためのテスティングフレームワークは多くの言語で提供されており、JavaのJUnitや、Visual BasicのVBUnitRubyRubyUnitPerlPerlUnitなど、言語名を接頭辞にした「〜Unit」という名称のテスティングフレームワークが主流です。これらはたまたま名前が似ているというわけではなく、最初のユニットテストツールであるSmallTalk用のSUnitが基に

    PHPUnitでユニットテスト
  • ウノウラボ Unoh Labs: Symfony2勉強会に参加してみた

    こんにちは、小俣です。symfony1.4にはだいぶ慣れてきた今日この頃、近々登場するらしいsymfony2が速いとかすごいとか噂されているので、乗り遅れないよう情報を仕入れておかねば!ということで、先日ちょうど弊社オフィスを会場に開催されたSymfony2勉強会に参加してみました。そのとき仕入れた情報をご紹介しようと思います。 はじめに:Symfony2は1.x系と内部構造が異なるので戸惑う Symfony1.xに慣れている方にとっては、初めのうちはディレクトリ構造が違いすぎて何処に何があるのか混乱しがちです。私も何度も迷子になりました。少しずつ慣れていくしかありませんが。。。下記にSymfony2の特徴をいくつか紹介してみます。 Symfony2はすべてBundleで構成されている Symfony2では、新しい概念がいくつか導入されていて、まずはBundle(直訳:束)の理解が必要です

  • 第1回 PHPUnit入門 | gihyo.jp

    はじめに 皆さん、テストしてますか? 近年、システム開発を発注する顧客や利用ユーザーの品質に対する要求レベルは格段に向上しています。そのため、システムの品質を保証するための「テストフェーズ」はますます欠かせなくなってきています。 ここで、一口に「テスト」といっても、フェーズによって以下のような様々なテストがあります。 ユニットテスト・単体テスト 結合テスト・システムテスト 総合テスト 受け入れテスト 負荷テスト セキュリティテスト 筆者の経験上、一般的なシステム開発でもっとも大きな工数を占めるのは、この「テスト」フェーズと考えています。なぜなら、テストフェーズは例外なく「繰り返し作業」だからです。前述の様々なテストフェーズで共通することですが、テストフェーズは「テストで発見されたバグ・障害を修正して再度テストを行う」という作業を何度も繰り返し行うフェーズです。あとのフェーズで不具合が発見さ

    第1回 PHPUnit入門 | gihyo.jp
  • Php2Python - Python alternatives to PHP functions, classes and libraries - Php2Python

    NewsLearn more about the company, PR and product updates here.

    Php2Python - Python alternatives to PHP functions, classes and libraries - Php2Python