Home > アーカイブ > 2007-09

2007-09

デザイナー向けPHPチュートリアルビデオ

  • 2007-09-27 (木)
  • PHP
この記事の所要時間: 034

KILLER PHP – FOR WEB DESIGNERS

PHP VIDEO TUTORIALS FOR WEB DESIGNERS

20以上のPHPチュートリアルビデオが公開されています。サイトではデザイナー向けと謳っているだけに基本的な内容から解説されているようです。

チュートリアルの内容は全て英語になるのですが、インストール方法やソースコードの説明などは映像もあるので何となく理解できます。個人的には解説されている内容自体は知っているので英語の勉強になって良いです。;-)

これからPHPを触れる方には参考になるのではないでしょうか。

楽天API PEAR::Services_Rakuten-0.2.1リリース

  • 2007-09-19 (水)
  • PHP
この記事の所要時間: 116

楽天ウェブサービスをPHPで利用するPEARライブラリ「PEAR::Services_Rakuten-0.2.1」をリリースしました。

本リリースでは以下の内容を修正しています。(nekolifeさん、ご指摘ありがとうございました。)

  • 商品検索等でgenreIdに0を指定すると「keyword or genreId have not been set.」が表示される

インストール・アンインストール

インストール方法は以下です。

$ pear install --alldeps http://www.1x1.jp/blog/download/Services_Rakuten-0.2.1.tgz

インストール時に「Failed to download pear/XML_Serializer within preferred state “stable”」といったエラーが発生した場合は以下のコマンドでXML_Serializerをインストール後、Services_Rakutenをインストールして下さい。

$ pear install --alldeps XML_Serializer-beta

アンインストール方法は以下です。

$ pear uninstall __uri/Services_Rakuten

使用方法はこちらをご参考下さい。

人気のTwitterクライアントは?

この記事の所要時間: 55

いつからかTwitterのfeedに投稿元を示すが含まれるようになりました。(情報ありがとうございました。>@fjkktkysさん)

そこで投稿数からTwitterクライアントのランキングを出してみました。

集計期間は[9/10 00:00:00 ~23:59:59]、対象はprotectをかけていない投稿(public_timelineに表示される投稿)です。

Twitterクライアントランキング [日本ユーザ]

まず日本ユーザでのランキングです。

1位はWindows用クライアントのTwitです。私も使っていますが、必要十分な機能が上手くまとまっており良いツールです。2位はim、3位はMac用ツールのtwitterrificとなっています。Mac用ツールでは5位にTwitterPodが入っており、Macでの専用クライアントでは人気を二分しているようです

なお[web]はランキングに含めてませんが、投稿数はダントツのトップです(全クライアントの投稿数を合計してさらにN倍)。ただこの数にはモバツイやtwitterMobileのようにに対応していないものも含まれているので、純粋なtwitter.comからの投稿はもっと少ないと思われます。

モバツイやtwitterMobileはユーザ数も多いでしょうから、どのあたりにランクインするか見てみたいですね。(是非ご対応を;-))

rank client entries
1 Twit 4913
2 im 1879
3 twitterrific 1737
4 TwitterFox 1484
5 TwitterPod 736
6 TwitterIrcGateway 438
7 Twippera 149
8 tmitter 145
9 foxytunes 141
10 Twitter Line 105
11 tokotto 94
12 TwitBin 87
13 Chirrup 82
14 TwitKu 81
15 Netvibes 62
16 twitte.rb 23
17 txt 18
18 Twitter Tools 17
19 Tweetr 16
20 Twitter4J 16
21 m2m 14
22 TwitterMail 12
23 Twitter4R 9
24 GtkTwitter 8
25 Facebook 7
26 twigadge 6
27 fring 5
28 Twitter Opera widget 2
28 Twimp 2
28 bookey 2
28 PocketTweets 2
29 Snitter 1

Twitterクライアントランキング [全体]

次は全体のランキングです。

まず目に付くのがクライアント数の多さです。日本ユーザでは32だったクライアント数は65となっています。中には掘り出し物のツールかも。

1位はtwitterrificで、2位に続く[im]と2つで投稿数の約半数を占めています。あと特徴的なのが3位の[txt](twitter.comが提供するモバイル版)です。日本では携帯電話からの投稿はモバツイやtwitterMobileなどツールを使用することが多く、[txt]はほとんど利用されていないようです(日本では17位)。

なお[web]については日本ランキングと同じくランキングには含めていませんが、こちらも圧倒的に1位となっています。

rank client entries
1 twitterrific 11651
2 im 9272
3 txt 6916
4 Twit 4932
5 TwitterFox 2465
6 TwitBin 1624
7 Tweetr 1255
8 Netvibes 918
9 yedda 876
10 TwitterPod 784
11 Facebook 645
12 Twitter Tools 531
13 PocketTweets 450
14 TwitterIrcGateway 449
15 foxytunes 354
16 TwitKu 243
17 Twippera 182
18 iTweet 173
19 tmitter 145
20 InnerTwitter 118
21 Snitter 115
22 TwitterMSN 111
23 Twitter Line 105
24 CTwitter 96
25 Twadget 95
26 tokotto 94
27 TwitterMail 86
28 Spaz 85
29 Chirrup 83
30 the ORG 74
31 TTYtter 56
32 Twitter Opera widget 40
33 fring 38
34 Numpa 32
35 twibble 29
36 twitte.rb 24
37 ThinCloud 21
38 brabblr 20
39 TinyTwitter 17
40 Twitter4J 16
41 Twitter4R 15
42 m2m 14
43 Hahlo 11
43 Mobypicture 11
44 blt 10
44 Pwytter 10
44 cellity 10
44 mobile with WidSets 10
45 GtkTwitter 8
45 TwitterGram 8
46 SKTwitter 6
46 twigadge 6
47 30 Boxes 5
48 twitterAIR 4
48 BlogRovr 4
49 哀Twitter 3
50 Whirrl 2
50 twit.el 2
50 mobile with WidSets China 2
50 Twimp 2
50 Auto Tweet 2
50 bookey 2
51 1stat.us 1
51 blogTV.com 1
51 Whisher 1

日本ユーザが1/3

このランキングを作成するのに投稿数を集計したのですが、日本ユーザの投稿数が全体の1/3となっていました。

他の言語・地域については個別に集計していないので分かりませんが、日本ユーザが大きな勢力となっているのは間違い無いと思います。

PHP 5.2.4 の新機能

  • 2007-09-06 (木)
  • PHP
この記事の所要時間: 453

PHP5.2.4がリリースされています。

基本バグフィックス&セキュリティアップデートのようなので大きな変更はありませんが、ChangeLogから興味を引いた変更点をメモしておきます。

–enable-versioningの廃止

追加機能では無いですが。

PHP3/PHP4を同時にApacheモジュールとして実行できるオプションでしたが、今回廃止されました。まあ昨今ではさすがに使っている人はいないでしょうけど、PHP3->PHP4の移行期には必須とも言えるオプションだったので、感慨深いものがあります。

PHPエラーをstderrに出力可能に

CGI/CLI版では、display_errors=stderrに設定することにより、PHPエラーをstderr(標準エラー)に出力することができるようになりました。なおデフォルトではこれまでどおりstdoutに出力されます。

stderrにPHPエラーを出力

$ php -d 'display_errors=stderr' -r 'a' > stdout 2> stderr
$ cat stdout
$ cat stderr
PHP Parse error:  syntax error, unexpected $end in Command line code on line 1
Parse error: syntax error, unexpected $end in Command line code on line 1

PHPエラーでHTTP 500を返す

PHP5.2.4ではPHPエラーでHTTP 500を返す参照

前項のPHPエラーをstderrに出力するのと同じノリですね。

PCRE_VERSION定数を追加

正規表現ライブラリであるPCREのバージョンを表す定数が追加されています。

$ php -r 'echo PCRE_VERSION . PHP_EOL;'
7.2 2007-06-19

あとGDでもバージョンを表す定数が追加されています。(GD_MAJOR_VERSION, GD_MINOR_VERSION GD_RELEASE_VERSION, GD_EXTRA_VERSION, GD_VERSION_STRING)

php_ini_loaded_file()追加

現在読み込んでいるphp.iniファイルの絶対パスを返す関数です。

CLIで何か挙動がおかしいなあと思ったら、読み込んでいるphp.iniを確認するのも良いかもしれません。

$ php -r 'var_dump(php_ini_loaded_file());'
string(29) "/home/hoge/php524/lib/php.ini"
$ php -c . -r 'var_dump(php_ini_loaded_file());'
string(18) "/home/home/php.ini"

ReflectionExtensionクラスにinfo()を追加

extensionをリフレクションするReflectionExtensionクラスにinfo()が追加されました。

$ php -r '$obj = new ReflectionExtension("mbstring"); $obj->info();'

mbstring

Multibyte Support => enabled
Multibyte string engine => libmbfl
Multibyte (japanese) regex support => enabled
Multibyte regex (oniguruma) version => 4.4.4
Multibyte regex (oniguruma) backtrack check => On

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Directive => Local Value => Master Value
mbstring.language => neutral => neutral
mbstring.detect_order => no value => no value
mbstring.http_input => pass => pass
mbstring.http_output => pass => pass
mbstring.internal_encoding => ISO-8859-1 => no value
mbstring.substitute_character => no value => no value
mbstring.func_overload => 0 => 0
mbstring.encoding_translation => Off => Off
mbstring.strict_detection => Off => Off

ReflectionClass::getDefaultProperties()でstaticクラス変数が取得可能に

ReflectionClass::getDefaultProperties()でstaticクラス変数が取得できるようになっています。

<?php
class Foo
{
    public static $fooStatic = 'foo';
    protected $foo = 'foo';
}

$class = new ReflectionClass('Foo');

print_r($class->getDefaultProperties());
$ /home/hoge/php523/bin/php ref.php 
Array
(
    [foo] => foo
)

$ /home/hoge/php524/bin/php ref.php 
Array
(
    [fooStatic] => foo
    [foo] => foo
)

CakePHP解説本を書きました

この記事の所要時間: 046

先日のPHPカンファレンス2007で安藤さんが発表されたとおりCakePHPの解説本が出版されます。

この本の執筆にcakephp.jp管理人である堂園さん、そしてPHP勉強会やカンファレンスでお馴染みの安藤さん、と共に参加させて頂きました。

原稿はほぼ書き終えた状況で、現在は10月出版を目指して諸々の作業を行っています。

これまでもCakePHPを扱った書籍はあったのですが、単独での解説本としては(世界?)初となります。基本的な使い方から実践的な内容までカバーしているので、CakePHPユーザはもちろんの事、フレームワークは初めてという方にもおすすめの一冊となっています。

現段階ではamazon等で予約はできませんが、正式な発売日など決まりましたら、またお知らせ致します。

お楽しみに!

via: CakePHP のおいしい食べ方: 間もなくCake本登場!!

PHPカンファレンス2007に参加してきました

この記事の所要時間: 258

2007/9/1に行われたPHPカンファレンス2007に参加してきました。

仕事の都合もあって木曜日から東京入りしていたので前日の会合から参加しました。また会場設営、撤去のお手伝いをする事もでき、以前参加した時に比べるとよりイベントに関われたので良かったです。

カンファレンスの講演は基調講演を除き2会場で行われたのですが、当初の予定どおりに動きました。どのセッションも面白かったのですが、特に午前中に行われた2セッション(基調講演、大規模サイトの構築・運用ノウハウ)は現在仕事で取り組んでいる内容と関連するものだったのでとても興味深かったです。

基調講演

PHP4/5/6の動向についてでした。特にPHP5.3/6については何となくは知っていたのですが、それほど熱心に追いかけていたわけでは無かったので、先のPHPが掴めたのが良かったです。

大規模サイトの構築・運用ノウハウ

ウノウ/GREEの両CTOによるサイト構築に関する具体的なノウハウを聞くことができました。こういった細かな実例を聞けることはあまり無いのですし、個人的にも現在取り組んでいる内容にリンクするものだったのでとても有用でした。

講演自体はウノウ->GREEの順で自社の事例を発表するという流れだったのですが、内容によってはいきなり相手に話しを振るシーンなどもありました。

とても興味深い内容だったので、次回(があれば)はもっと具体的な内容(開発の勘所やパフォーマンスチューニング等)も聞いてみたいです。

PHP Framework Update

Symfony / CakePHP / PieceFramework / Ethnaの各フレームワークについて
のセミナーでした。

当初予定されていたZendFrameworkはかなり期待していたので無くなってしまい残念でした。

あとCakePHPセッションでは共著者である安藤さんに、CakePHP本の告知をしていただきました。(安藤さんお疲れさまでしたー。)

PHP at Yahoo! JAPAN

Yahoo!のPHP環境についてです。PHPはかなり使っているようですが、使い方としては独自拡張を行っているようなのでいわゆる一般的な使い方とは異なるような印象を受けました。

やはりあれほどの大規模サイトになるとそうせざるを得ないのでしょうか。

実際のロジックはC/C++で組んで、それをPHPで実行させるというアプローチはとても興味深かったです。PHPでパフォーマンスを求めていった先の一つの形だと思います。

あと発表者であるogiさんはPHPとC/C++が書ける方なので、今後はPHP自体の開発を担われるのではないかと思います。(勝手に;-))

ライトニングトーク

ネタ系あり告知系ありでテンポ良く進みました。裏でやっていたビジネスセッションも気になったのですが、LTはライブ感が大事なのでこちらを選びました。(ビジネスセッションは誰かのレポートで追います。)

朝早かったのもありかなり眠気が来ていたのですが、ネタ系セッションでそれを吹き飛ばすことができました;-)

懇親会

100人以上(!)が参加という事で披露宴会場のような場所で立食形式で懇親会が行われました。それほど積極的には動かなかったのですが多くの方とお話することができました。お話させて頂いた皆さんありがとうございました。

あとじゃんけん大会でZend社TシャツをGETしました!どこかのイベントで着ていきます。:-D

Home > アーカイブ > 2007-09

検索
フィード
メタ情報

Return to page top