10. require_once __DIR__.'/silex.phar'; $app = new Silex¥Application(); $app->get('/hello/{name}', function ($name) use ($app) { return 'Hello '.$app->escape($name); } ); $app->run();
ようやくPHPネタ Symfonyをやっとくかと、VMWare上の勉強用ゲストOS(CentOS,NAT)でサンプルを作ってみる。 symfony init-project sample symfony init-app bbsとしてサンプル掲示板を作ってみた。 ApacheのDocumentRoot設定したりごにょごにょしてhttp://ゲストOSのIP/bbs_dev.php/にアクセスしたら You are not allowed to access this file. Check bbs_dev.php for more information. とか言われた。あぁ、アクセス権がないのかね?って思ってアクセス権を変更したけど、状況はかわらず。なんだよーとおもって、bbs_dev.phpファイル見てみたら <?php if (!in_array(@$_SERVER['REMOTE_
この記事はSymfonyアドベントカレンダー2010の19日目です Symfony Advent 2010 : ATND Symfonyアドベントカレンダー 2010 | 日本Symfonyユーザー会 前の記事:vim-symfony ver 0.10 についてのまとめ【決定版】 次の記事:Symfonyでクリスマスまでに彼女を作る方法(1.4対応) 1. sfWebBrowserPlugin - RESTful APIを利用するならお手の物。HTTP通信なら完全お任せ! READMEを見ると利用方法が事細かに書かれているので非常に分かりやすいですね。 このpluginでは 3種類のインターフェイスをアダプターという形で用意しています。 sfCurlAdapter sfFopenAdapter sfSocketsAdapter どれを利用しても良いのですが、Forward Proxy経由で
こんにちは、小川です。 今回はPHP製のスクレイピングライブラリ「Goutte」を紹介します。 Goutteの作者はSymfonyプロジェクトのリーダーを務めるFabien Potencier氏です。 Goutteの利用にはPHP 5.3が必須です。また、GoutteはSymfony2のコンポーネントやZend Frameworkの一部のライブラリを利用しています。 まずはインストールを行います。GitHubのリポジトリをクローンします。 実際にスクレイピング処理を記述するscrape.phpを作成します。 Goutteは単一のPharアーカイブにまとめられています。 このPharアーカイブを読み込むだけでGoutteが利用可能です。読み込みはPHPファイルと同様、requireで行います。 (PHP: Phar - Manual) 先ほどクローンしたGoutteディレクトリの直下にgou
こんにちは、小俣です。symfony1.4にはだいぶ慣れてきた今日この頃、近々登場するらしいsymfony2が速いとかすごいとか噂されているので、乗り遅れないよう情報を仕入れておかねば!ということで、先日ちょうど弊社オフィスを会場に開催されたSymfony2勉強会に参加してみました。そのとき仕入れた情報をご紹介しようと思います。 はじめに:Symfony2は1.x系と内部構造が異なるので戸惑う Symfony1.xに慣れている方にとっては、初めのうちはディレクトリ構造が違いすぎて何処に何があるのか混乱しがちです。私も何度も迷子になりました。少しずつ慣れていくしかありませんが。。。下記にSymfony2の特徴をいくつか紹介してみます。 Symfony2はすべてBundleで構成されている Symfony2では、新しい概念がいくつか導入されていて、まずはBundle(直訳:束)の理解が必要です
お久しぶりです!夏季休暇真っ最中のitani(@w650)です。 入社して5か月経ちますが、ひたすらsymfonyを触り続けています。 今回は、日々symfonyを触り続けてきた中で学んだ、action内でできることをいくつか紹介します。 1. metaタグやcssなどの指定 symfonyでmetaタグの指定やcssの読み込み等をしようとしたとき、真っ先に思いつくのはview.ymlだと思います。 しかし、symfonyのresponseオブジェクトを使えばview.ymlで設定するようなことがaction内でできます。 まずは、responseオブジェクトを取得します。 これはsfComponentの中にすでにメソッドが用意されています。 $response = $this->getResponse(); このメソッドはsymfonyのsfWebResponseオブジェクトを取得します
『yubitter』という携帯電話向けのTwitterクライアントサービス(ゲートウェイ)をsymfonyで作りました。(サービスの詳細はリンク先でご確認下さい。) cloudrop発のアウトプットとして開発に取り組んだもので、初めてのリリースとなります。 タイトルにはsymfonyと書きましたが、開発には数多くのオープソースソフトウェアのお世話になっています。 できる事ならyubitterもソースを公開したいのですが、利用しているライブラリのライセンスの確認、環境依存部分の抽象化、symfony1.4系への対応、ドイヒーなコードの修正などを行う必要があり、今は難しいところです。 最終的にはそういう諸々を乗り越えての公開を目指して行きたいと思っています。 事実上のモバイル向けクライアントの標準であるモバツイッターや、多機能でアジャイルなMovatter、さらには公式の携帯版がある中で、いま
localで開発をしてAmazonEC2で運用しようとしたら、えらいハマった。 考えてみれば当たり前なんだけど、しばらく国内サーバーばかり使ってる温室育ちのボクはすっかり忘れてた。 タイムゾーンが違うのよね。。。 今回の場合は、ローカルで現在時間で公開時間を設定していたCMS用データをEC2に置いたサーバーでロードしたところ、全く使えなクなってしまった。 当たり前なんだけどUSWEST / USEASTどちらも、だいぶ日本より時間が遅い。 そもそも、CMSならまだしも、CGMだとユーザーの投稿時間がめちゃくちゃになってしまう。 超あぶねー。 という訳で、以下を必須で設定していおいた方が良さそう project/configにsettings.yml all: .settings: default_timezone: Asia/Tokyo default_culture: ja projec
symfonyプロジェクト全体で共通で利用される設定は、ProjectConfigurationクラス(config/ProjectConfiguration.phpファイル)のconfigureDoctrine()メソッド内で行うとよいでしょう。 以下の例では、クエリーキャッシュと結果キャッシュの両方にmemcachedドライバを設定しています。また、それぞれのデフォルトの存続時間を1時間に設定しています。 class ProjectConfiguration extends sfProjectConfiguration { public function setup() { $this->enablePlugins('sfDoctrinePlugin'); } public function configureDoctrine(Doctrine_Manager $manager) {
Introducing four new PHP 5.3 components and Goutte, a simple web scraper | php|architect Symfony2にも入っているPHP 5.3ベースの便利ライブラリ集が紹介されていました。 ブラウザのシュミレーションをしたり、DOMを辿ったり、CSSセレクタ形式をXpathに変換したりと、便利に使えそうです。 CssSelector CSSセレクタをXPathに変えてくれるモジュールのようです。 ページのスクレイピングにとっても役立ちそうですね $document = new DOMDocument(); $document->loadHTMLFile('http://fabien.potencier.org/articles'); $xpath = new DOMXPath($document); forea
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く