タグ

PHPに関するlapureのブックマーク (22)

  • PHPで大規模ブラウザゲームを開発してわかったこと

    2010年6月26日に行われたイベント、オープンソースカンファレンス2010 Hokkaido内のセミナーで使われた発表スライド「PHPで大規模ブラウザゲームを開発してわかったこと」Read less

    PHPで大規模ブラウザゲームを開発してわかったこと
  • ウノウラボ Unoh Labs: IPアドレス帯をチェックする

    こんにちは。新入社員の ryosuke です。 ウノウに入社してから携帯サイトに関わっているのですが、これまで格的に携帯サイトを構築した事が個人的に無く、ノウハウが足りず周囲に助けて貰ったりしながら楽しくやってます。という訳で携帯のノウハウをご紹介という訳にはいきませんが、その周辺知識に絡んで今回はIPアドレス周りの処理について書かせてもらおうと思います。 携帯専用サイトでは携帯端末以外からのアクセスを制御(アク禁)したい場合があると思います(なんといっても携帯専用ですから)。 USER_AGENT等は簡単に変更できてしまうので、携帯キャリアのゲートウェイ経由で接続しているかどうかをチェックする事になります。ゲートウェイのIPアドレス帯は各キャリアのWEBサイトで公開されているのですが、69.208.0.0/24のようなIPアドレスの範囲を表現できるCIDR表記で公開されており、クライア

    lapure
    lapure 2010/02/08
    IPチェック
  • テンプレートエンジン Smoochy を公開します - localdisk

    Twitter で再三「リリースするよ」とか言っておきながら全然出来ていませんでしたが、せっかくのクリスマスなので、公開してみることにしました。コードがかなり汚いですが、一応意図通り動いてますので。お正月とかにドキュメント書いたりリファクタリングするつもりです。 名前は Smoochy(すむーちー) です。由来は作ってる時によく聴いていた坂龍一のアルバム名から。 以下説明。 はじめに Smoochyとは? Smoochy は PHP で作られたテンプレートエンジンです。Smoochy は Pure HTML をテンプレートとして使用するため、当の意味で「デザインとロジックの分離」を実現しています。 独自タグや独自属性、ましてや {$hogehoge} のようなマークアップも必要ありません。 インストール bitbucket.org より Smoochy.zip をダウンロードします。

    テンプレートエンジン Smoochy を公開します - localdisk
    lapure
    lapure 2009/12/25
  • 「モダンPHPプログラミング」の資料が大変素晴らしい件 : candycane development blog

    プリンとOpenPearで有名と思われるsotarokさんが公開した「Modern PHP Programming」の資料がとても良いです。PHPは敷居が低い為、非常に多くのユーザーがいます。 しかしユーザーが多い一方でレベル差が大きくなっている面もあります。 たとえば・・・ 「コピペで動かすのが精一杯」 「とりあえずすいすい書ける人」 「ライブラリとかを使える人」 「ライブラリを作れる人」 「PHP自体をいじれる人」 のような感じです。PHPユーザ会が運営しているPHP勉強会なども毎月開催されていますがこのステップをどうやって登るかというのは難しい問題です。その意味でこの資料はとても役立つ内容になっていると思います。「とりあえずPHPは書けるけど、今のトレンドに合っているかわからない」なんていう方は是非ともこちらの資料を見てみるといいでしょう。なお同様のコンセプトでモダンPHP

  • [CakePHP] index.phpがあるディレクトリの名前と、index.phpにアクセスするときのURLのパス名が異なる場合、index.phpのWEBROOT_DIRを設定する必要がある。 - SumiTomohiko's blog

    環境 この記事の内容は、Ubuntu 6.10, Apache 2.0.55, PHP 5.1.6, CakePHP 1.1.12.4205で確認しました。 結論 例えば、cake/app/webrootを/home/foo/public_htmlにコピーして公開するとします。すなわち、CakePHPにhttp://example.com/~foo/index.phpというURLでアクセスします。このようにindex.phpが存在するディレクトリの名前(例でいうとpublic_html)と、URLのパス名(例でいうと~foo)が異なる場合、index.phpのWEBROOT_DIR定数を設定する必要があります(例でいうと、'~foo'にします)。 詳細 CakePHPは、cake/dispatcher.phpのDispatcher::baseUrlというメソッドで、自分のURLを導出してい

    [CakePHP] index.phpがあるディレクトリの名前と、index.phpにアクセスするときのURLのパス名が異なる場合、index.phpのWEBROOT_DIRを設定する必要がある。 - SumiTomohiko's blog
  • PHPの言語仕様がウンコな理由個人的トップ10 - kなんとかの日記

    PHPerの問題点はPHPしか知らずに的外れなことを言うことだ」と、Javaしか知らなくて的外れなことを言っている連中にすら言われちゃってるPHPerのみなさん、こんにちは。 PHPは「使える道具」であることは事実です。しかし同時に言語仕様がウンコなのも事実。 ここでは、個人的にウンコだと思っているPHPの仕様を挙げてみたよ! htmlspecialchars() の名前が長すぎる これはほんとウンコ。おまえWebアプリのための言語やろが!なんでこの関数の名前がこんなに長いねん!こんだけ長かったらめんどくさがって echo $var としてまうやろが!WordPressのthemeでHTMLエスケープ忘れが多いのはおまえの名前が長すぎるせいだ! そんなわけで、全PHPerはこんな関数を定義するといいと思うよ。 ## echo $var; よりも短く h($var); と書ける! func

    PHPの言語仕様がウンコな理由個人的トップ10 - kなんとかの日記
    lapure
    lapure 2009/11/30
  • PHPUnitでユニットテスト

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

    PHPUnitでユニットテスト
  • PHPの開発効率を上げる10個の関数 - PHP,MySQL,Flex,JSな日々+イラストとか

    「追記とか」にコメントの返答や追記をしてますので合わせてどうぞ。 かれこれ3年くらいPHPをやっているので、せっかくなので10個の便利な関数を並べてみました。 作業効率がかなりアップするので、これからPHPをやってみようかなぁって思う方は知っておくと便利だと思います。 変数、配列の内容をキレイに表示する関数「d」 変数や配列の内容をHTML構文でキレイに表示してくれます。 しかも、var_dumpと書くとタイピングが大変なので「d($hoge)」として簡単に記述。 これだけでも作業効率8倍 function d() { echo '<pre style="background:#fff;color:#333;border:1px solid #ccc;margin:2px;padding:4px;font-family:monospace;font-size:12px">'; foreac

    PHPの開発効率を上げる10個の関数 - PHP,MySQL,Flex,JSな日々+イラストとか
  • tekmemo.net

    lapure
    lapure 2009/07/13
  • コードが酷いと dis るだけじゃ何も変わらないと思うので直してみるよ - localdisk

    PHPer のみなさん。こんにちは。元気ですか? 僕は元気じゃないです。体調は最悪だし、マイケル・ジャクソンは亡くなってしまったし。僕の中のスーパースターがまた1人逝ってしまいました。ほんとに悲しい。そう僕とマイケルとの出会いはもうかれこれ何年になるだろうか… …じゃなかった。マイケルの話はまたいずれするとして、今日は PHP の話をします。 〃                 i,        ,. -‐ r'   ィ=ゝー-、-、、r=‐ヮォ.〈    / !  :l      ,リ|}    |. }   /   .こいつをみてくれ…。どう思う? .   {.   |          ′    | }    l レ-、{∠ニ'==ァ   、==ニゞ<    | !∩|.}. '"旬゙`   ./''旬 ` f^|    | l(( ゙′` ̄'"   f::` ̄  |l.|   |

    コードが酷いと dis るだけじゃ何も変わらないと思うので直してみるよ - localdisk
    lapure
    lapure 2009/06/30
  • ウノウラボ Unoh Labs: Django風PHPフレームワークPlufを試してみました

    最近マジクエストというアトラクションにはまっています。 Keitaです。 PHPには、CakePHPやsymfony、EthnaやrhacoとかCodeIgniterやPiece Frameworkなどなどいろいろフレームワークがありますが、探してみるとこういったよく耳にするフレームワークのほかにもいろいろなフレームワークがあります。 Do You PHP はてなの記事で知ったのですが、The Big List of PHP Frameworksといった記事も出ているようです。 最近では、RubyのSinatraライクなフレームワークもちょこちょこ出てきているようで、yamaokaが社内の勉強会にて発表してくれていました。 さて、そのThe Big List of PHP Frameworksの僕自身そのリストの膨大さに愕然としてまったくその内容やソースを追いかけていませんでしたの

  • PHPの正規表現 - namespace x768

    PHPにおける文字列リテラルには,シングルクォートで括るものとダブルクォートで括るものの2つがあるが,それぞれ次のような違いがある。表記シングルダブル'終端'""終端\\\\\''\'\"\""\t\tタブ文字上の表は,例えば \t と書くと,ダブルクォート中ではタブ文字として解釈されるが,シングルクォート中では \t と,そのまま解釈されることを表す。ここで,\ 1個だけを表現しようと思うと,必ず \\ と書かなければならない。ただし,後ろに来る文字によっては1個でも構わないが,不規則なので間違えやすい。次に,この文字列を正規表現として使う場合,例えばpreg_matchに渡すと,もう一度バックスラッシュが解釈される。つまり,正規表現でバックスラッシュ1個を含む文字列を検索する場合,こうなる。 if (preg_match('/\\\\/', 'aaa\aaa')){ } まず,\\ が

  • PHPスクリプトの遅い部分を簡単に見つける方法

    extension=xdebug.so xdebug.profiler_enable = 1 xdebug.profiler_output_dir = /tmp と設定して、apacheのリロードを行えばXdebugが動作します。 これで、あとは、ブラウザで調査したいページにアクセスすれば、 /tmp/ 以下にプロファイルデータが作成されていきます。 次にプロファイルデータの閲覧の為に、 http://sourceforge.net/projects/wincachegrind/からWinCacheGrindをダウンロードしてwindowsマシンにインストールします。 あとは、WinCacheGrindで作成されたファイルを取り込めば、関数ごとの 実行時間をたどりながら確認することができます。 ※WordPress2.7.1日語版インストール直後のTOPページで試してみた場合です。 We

    PHPスクリプトの遅い部分を簡単に見つける方法
  • この先生きのこるには

    PH – 2008-05-02 19:03:55 PHP syntax error のvim プラグインを拝見したいです というコメントをもらったので紹介。 以下の設定を.vimrcに書くだけです。 "" " PHP Lint nmap ,l :call PHPLint() "" " PHPLint " " @author halt feits " function PHPLint() let result = system( &ft . ' -l ' . bufname("")) echo result endfunction これで、phpを編集中にescを押して:wしたあと,lと入力すると文法チェックができます。コメントの部分をとりのぞくとほとんど何もしてませんね:wも同時に実行すればもうちょっと手軽に。副作用あるけど。 こちらは実行の方。 [script]shebangでファイルを

    この先生きのこるには
    lapure
    lapure 2008/10/27
  • MySQL+Apache+PHPをインストールしよう(1/3) ― @IT

    PHPMySQL はじめに、PHP(Personal Home Page tool)について簡単に紹介します(注)。ご存じのように、PHPはWebアプリケーションの定番として定着しています。また、Strutsのような大規模開発向けフレームワークがもてはやされる一方で、PHPをはじめPerlRubyPythonといったスクリプト系言語に代表される「Lightweight Language」が手軽さと機能の豊富さから近年再注目されています。特にDBやWebとの相性がいいPHPは、初歩的なWebアプリケーションから格的な用途まで幅広く利用されています。 PHP 4.1まではおおむね順調にリリースされていたのですが、PHP 4.2で「register_globals問題」が大きく取りざたされました(コラム1)。ちなみに、快速MySQLでデータベースアプリ!の第5、6回で紹介しているPHP

    MySQL+Apache+PHPをインストールしよう(1/3) ― @IT
  • PHPカンファレンスでギークたちが回答「PHPの次に学ぶ言語は?」:CodeZine

    7月21日に開催された「PHPカンファレンス2008」では、午後のメインセッションに「激論! PHPの次に学ぶ言語はこれだ」と題したパネルディスカッションが開催された。パネラーとして登場したのは、PerlからShibuya.pmの竹迫良範氏、日Rubyの会の高橋征義氏、日Pythonユーザ会の柴田淳氏、JavaからはSeasarプロジェクトのひがやすを氏、そしてJavaScriptはあまちゃん(id:amachang)氏(Shibuya.js)という豪華な顔ぶれとなった。司会はPHPユーザ会の個々一番氏が担当した。 PHPは動的なウェブページ制作用のサーバサイド・スクリプト言語として歴史もあり、初心者から大規模開発を手がけるプロフェッショナルまで広い層に支持されてきた。しかし一方で、PHPユーザーにはPHPしか知らない(他のコンピュータ言語を利用したことがない)ひとが多いのではないかと

  • CakePHP 管理者サイトでBasic認証を簡単に行うコンポーネント

    CakePHPの管理者向けサイトにBasic認証を簡単に追加するコンポーネントです。 1.2系で動作しますが、ちょこちょこっといじれば1.1でも動くかと。 1. Routing.adminを有効にする そもそもこれをやらないと意味がありません。[app/config/core.php]でRouting.adminを有効にします。 これにより[http://example.com/admin/~]のURLで管理者用アクションにアクセスできます。 Configure::write('Routing.admin', 'admin'); 2. 認証コンポーネントを設置 認証コンポーネントを[app/controllers/components/admin_auth.php]に設置します。 [2008/05/29] 継承元をComponentからObjectへ変更しました。(janさんありがとうござ

    lapure
    lapure 2008/07/10
    ベーシック認証
  • PHP コード最適化 Best Practices 63+ - カタコト日記

    みたいなタイトルの記事を Digg 経由で発見。チートシート代わりにと思い超訳。*1 A Software Architect PHP 最適化 ベストプラクティス! 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo '文','字'; (カンマ区切り)の方が、'文'.'字' (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09

    PHP コード最適化 Best Practices 63+ - カタコト日記
  • PHP-users.jp - 日本のPHPユーザのためのハブサイト

    まずは連載記事で PHP を理解しよう! [Think IT] 一気に覚えるPHP! まずは PHP の基礎を概念から学びます。関連する連載記事も豊富なので一気に読み込んでしまいましょう。 PHPプログラミングの基礎を学ぼう(1/2) - @IT Apache + MySQL + PHP でウェブサービス開発の勘所を学びます。 PHPのコミュニティ ポータルサイト「PHPプロ!」 PHPに関する最新ニュース、開発に使えるちょっとした Tips などを公開。Q&A掲示板も充実しています。 もっと便利に PHP を使うには? 【一気に覚えるPHP!】使えるスクリプト! PHPのライブラリーであるPEARや、フレームワークが紹介されています。 連載:CakePHPで高速Webアプリ開発|gihyo.jp … 技術評論社 CakePHP というフレームワークを使った爆速サイト開発の手法いろいろ。

    lapure
    lapure 2008/05/21
  • MySQL FULLTEXT Ngram : LIKE検索より数十倍高速な、お手軽 日本語全文検索 について|blog|たたみラボ

    tatamilab.jp