前回は「Yahoo!電力使用状況API と Google Chart API で 電力使用状況グラフ」というエントリを書きました。 今回は「Yahoo!電力使用状況API」ではなく、@ssci さんが公開されている「東京電力電力供給状況API」を使ってみました。 プラスで、前回は画像として出力していましたが、今回はHTMLで出力するようにしてブログパーツ的な使い方が出来るようにしてみました。 作成にあたっては、「PHP言語とWebAPIを利用した自作ブログパーツの紹介」と 「PHP5.1で、JSONを使う(PHP5.2未満編) - Beyond prep」を参考にさせていただきました。 使用した物(Web API) 「電力使用状況グラフ」を作成するのに、 東京電力電力供給状況API Google Chart API を使いました。 「Google Chart API」は言わずと知れた Go
CakePHP1.2 のセレクトタグを例に動作を見てみます。 例えば、CakePHP でデータベースの値からセレクトタグを作りたいとき以下のようにします。 $areas = $this->Area->find('all'); $areas = Set::combine($areas, '{n}.Area.id', '{n}.Area.name'); この $areas を検索条件にして、さらに先頭に“すべてを検索”を追加したい場合、以下のようにする。 <?php echo $form->select('area_id', $area, null, array(), 'すべてを検索'); ?> 生成された Html は以下のようになる。 <select name="data[User][area_id]" id="UserAreaId"> <option value="">すべてを検索</o
OAuth認証を行うためのpearライブラリとしてHTTP_OAuthがあります。 今回は、そのライブラリを利用してtwitterの認証を行う方法をご紹介します。 1. HTTP_OAuthのインストール HTTP_OAuthはHTTP_Request2、HTTP_Request2はNet_URL2に依存しています。 先にこれらのライブラリをインストールした後、インストールを行います。 # これらのライブラリはまだアルファバージョンなので、”channel://~”としてインストールします。 pear install channel://pear.php.net/Net_URL2-0.3.0 pear install channel://pear.php.net/HTTP_Request2-0.4.1 pear install channel://pear.php.net/HTTP_OAu
連番の変数や関数名を for で処理するときなど、 動的に名前を指定したいときがある。 そのときは「可変変数」「可変関数」を使用するようだ。 以下メモメモ。。 ■可変変数 PHP: 可変変数 – Manual http://jp.php.net/manual/ja/language.variables.variable.php 変数名を動的に指定する場合は、 $a = ‘hello’; $$a = ‘world’; (または $hello = ‘world’;) としたとき、以下のような出力。 echo “$a”; → hello echo “${$a}”; → world echo “$hello”; → world 変数名の一部だけを可変にする場合は、 $b = ‘llo’; echo “$he{$b}”; → エラーとなる! echo “${‘he’ . $b}”; → world
すべての漢字を取り出す正規表現を参考にPHPでトークンを切り出すサンプルを作成しました。 <?php // スクリプトはUTF-8で記述されています $str = <<<EOM ようこそphpspotへ!当サイトではフリーのwindows用php開発環境であるPHPエディタ forWin や、フリーのPHPスクリプト( PHP掲示板,webshot,webimager,CMS 等 )、PHPツールバー、テレビバー、便利検索バー(Yahoo,Google,辞典検索)などを配布しています。その他、PHP入門 や PHP5ーTIPS、PHPサンプル集、MySQL解説、PHPレンタルサーバー特集などのコーナーもあります。 EOM; mb_internal_encoding("UTF-8"); mb_regex_encoding("UTF-8"); $token = array(); // すべての
1. はじめに このサイトは php を利用したスクレイピング処理の具体的手法について記載されたサイトにしようと思っています。なので、あまり面白いサイトではありません。内容も偏重していることと思いますが、ご質問などがございましたら、りょーちまでご連絡ください。 1.1. スクレイピングとは スクレイピングの話しを始める前に、現在のWebサービスについて幾つか言及しておきます。 現在様々な会社が様々なWebサービスを展開しています。かなり昔、今よりWebサイトそのものが少ない頃の時代は、HTMLファイルを手動で作成することが殆どでした。しかし、現在はバックグラウンドにデータベースが存在し、データベースの内容を動的に表示し、ページを作成するようなサイトがかなり多くなっています。 さて、データベースを利用するメリットは何でしょうか? 幾つかの視点が挙げられると思います。 最も重要な点は、ひとつひ
森川です。恥ずかしながらmemcacheを使うくらいならtmpfsとかMySQLのHEAPテーブルを使えばいいじゃん、などと思っていたのですが、今回簡単なベンチマークをやってみて心を入れ替えました。 はい、memcacheは偉大です。すごく速いです。 テストとして10万件のデータをINSERTして、そこから該当するデータを10万件取得します。まずはmemcacheを使用した場合です。 今回はdagレポジトリのRPM版memcachedとソースからインストールしたPHP 5.2.3を使用してpecl installでmemcacheエクステンションをインストールしています。memcachedの設定はデフォルトのままです。 # yum install memcached # pecl install memcache # vi /usr/local/lib/php.ini extension=
PHP Performance Series: Caching Techniques - Mike Willbanks : getting into the mind of a php developer. PHPでパフォーマンス向上のためのキャッシュテクニック色々が紹介されていました。 取得に時間のかかるデータはキャッシングで高速化、は当たり前の処理ですが、その方法もいろいろあり、コードが紹介されていたので解説 apc によるキャッシング方法( APCの説明 ) APCはPHPのコードを共有メモリなどに中間形式にキャッシュしておいてPHPの実行速度を上げるための仕組みです。 そのAPCエクステンションを有効にすると、データをキャッシュしておくためのAPIも提供されます。 <?php if (($config = apc_fetch('config')) === false) { requ
PECLに登録されているAPC(Alternative PHP Cache)は、PHPの中間コードのキャッシュや最適化を行う拡張モジュールです。APCは前に触ったことがあり、それがいつだったか調べてみたら、なんと2002年3月!使っていた環境は、PHP4.1.1+APC1.1.0。。。にもかかわらず、何だかGIGAZINEからリンクされているようで、リンク先としては結構恥ずかしいかも。。。 ということで、再度ざっとまとめることにしました。 PECL :: Package :: APC 使用した環境 まずは確認環境ですが、CentOS4.4+PHP5.2.0です。PHPは以下のようなconfigureオプションを付けてソースからbuildしています。 ●PHP5.2.0のconfigureオプション--with-apxs2=/usr/local/apache2/bin/apxs \ --pr
WST(Web Standard Tools)の「Structured Source Editing (SSE) Component」というコンポーネントを利用する試み。SSEについては「Structured Source Editing (SSE) Component Overview」。要するに拡張可能な構造テキストエディタ(?)なのだが、HTMLエディタに機能を追加したい場合とかに使える(かもしれない)。ここではSmarty(PHPのテンプレートエンジン)を想定してテキトーなコンテンツアシストとテキトーな色付けとテキトーなホバーを追加してみた。 色付け “{”と“}”で囲まれた部分をSmartyタグであろうがなかろうがすべて問答無用で色付けする(色はPreferenceで設定可能) コンテンツアシスト カーソルが“{”の次にある時、コンテキストに関わらず組み込み関数・カスタム関数を候
去年の話ですが、海外でこんな記事が上がっていました。 20 Tips you need to learn to become a better PHP Programmer 記事の内容は、かなりレベルが低いです。 しかし、初心者のうちに知っておけば、より早く成長出来るでしょう。 初心者PHPerのために、この記事の翻訳を載せます。 20 Tips you need to learn to become a better PHP Programmer PHPは、同じオブジェクトの扱い方でも複数の書き方を持っている、とても気まぐれなプログラミング言語だ。 詳しくは、私の書いた”The Art of Programming“を読むと良い。 これから書くTipsは、過去のプロジェクトから私が学んだコードの可読性、メンテナンス性を上げ、あなたを素晴らしい、より進んだPHPプログラマーにするもの
ねぇ、ちょっとちょっと♪ ん?最近お気に入りのお笑いタレントのモノマネ使ってどうかしたの? あ…。いや、あのね。実は今いろいろな人がつくったプログラムを見て勉強中なんだけどね。 うんうん。それはとってもいいことだよね。 うん。でね、その中で一個わからないものがあったから教えてもらえないかな、っと思って。 へぇ〜、そうなんだ。うん、僕でよかったらなんでも教えてあげるよ。 わぁ、よかった!あのね、わからないのはね。 「?」 と 「:」 を使ってるプログラム があったんだけど、どんな意味なのかよくわかんなくって。 あ。なるほど。それってきっと 「三項演算子(さんこうえんざんし)」 っていうテクニックだと思うよ。 そこで・・・ IF文の省略バージョン「三項演算子」 たぶんそれって $test = ( $name == "kuPPO" ) ? 1 : 0; こんなカンジだっ
いつかやろうと思っていたWPの functions.phpで出来ることのま とめが、海外のWP専門質問サ イトにあったのでこちらをご紹介。 個人的にもかなり役に立ちました。 Q&Aサイトは色々助かりますよね。 WordPressのテーマファイルで使えるfunctions.phpは色々とテーマの機能を拡張するのに大いに貢献してくれます。 このfunctions.phpを使って何が出来るのかは、WebデザインレシピさんのWordPressのfunctions.phpに書いておくといいかもしれないコードいろいろという記事をご覧になってみてください。 今日ご紹介するBest Collection of Code for your functions.php fileというスレッドには79個の回答があります。 WordPressの情報専門のQ&Aサイト・WordPress Answersでのスレッド
2011/02/07 PHP技術者認定機構は2月7日、これまで発表済みだった初級試験と上級試験に加えて、最上位となる「PHP技術者認定ウィザード」の資格概要を発表した。発表済みの初級、上級試験では市販書籍を教科書とするなど、従来のIT関連資格試験にない取り組みをしていたが(参考記事:PHP試験が秋に開始、オライリー本が教科書)、PHP技術者認定ウィザードでは、1500文字以上の論文を提出。これを公開審議することで合否を決定する、これまでにない試験方式となる見込みだ。論文にはソースコードや図、グラフなどを含めることもできる。 PHP技術者認定ウィザードの受験資格は、選択式問題に回答するコンピュータベースの試験であるPHP技術者認定上級試験に合格していること。まず、セキュリティ、パフォーマンス、フレームワーク、インターナルのカテゴリから1つを選択してペーパー試験を受験し、これで7割以上の正答率
新しいことを勉強して、久々に心底感動しました。 Facebookである方が「もうすぐCodeIgniterカンファレンスが開催される」といったつぶやきをしているのを拝見し、この時初めてその存在を知りました。。 PHPのフレームワークで、習得が早く、動作速度が爆速だということだったので、ちょっと触ってみるかとダウンロードしてドキュメントを読みながら Hello World!を作ってみる。すると・・・ こ・・これはすごい・・ なにがすごいって、これまで私は「CakePHP」を超愛用していました。CakePHPは、もちろんそのほとんどがすごくいいのですが、若干だけ不満があったのです。しかし、codeIgniterではCakePHPの好きなところはそのままに、不満が全部吹っ飛んでいたのです。 では、その全貌をご覧入れましょう。 モデル・ビューが不要 CakePHPもcodeIgniterも、MV
こんにちは、トカちゃんこと、渡嘉敷勝男です(嘘です)。 先日作成した Flickr 日本語検索 では、検索結果が多い場合にページ別に分けて結果を表示している。 通常検索エンジンで検索した際、その検索結果が多い場合に、「 1 2 3 4 5 6 7 8 9 10 次へ>」のようなナビゲーションがされるが、まあ、これと殆ど同じよーなものである。 phpでの実装方法がよくわからなかったのだがどうやら Pear::Pagerの使い方 (Nega Diary) を見ると PEAR :: Package :: Pager を利用するのがよろしいっぽい。 しかし、レンタルサーバなどで、気軽に PEAR ライブラリを入れられない場合は自前で実装する必要があるよーである(うーむ) で、いろいろ探していたら、教えてgooにそのものズバリの質問があった。 ふむふむ。これを見てみると yambejpさん の回答が
<?php $lib = "/usr/share/pear"; set_include_path($lib . PATH_SEPARATOR . get_include_path()); require_once("DB.php"); require_once("Pager/Pager.php"); require_once("Smarty/Smarty.class.php"); //データベースからデータを取得する $datasource = "pgsql://postgres:@localhost/bugtracker"; $db = DB::connect($datasource ); $sql = "select * from mantis_bug_text_table order by id asc;"; $res = $db->query($sql); //デー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く