メジャーバージョンアップでやりたいこと

メジャーバージョンアップするとしたら、個人的にやりたいなと思ってること: PHP 7.1以上対応にする コードスタイルを今風にする short array syntaxとか戻り値の型ヒントとか その他あまり知らないけどあれば取り入れてく 周辺ライブラリのアップデート PHP…

woothee-php v1.8.0をリリースした

リリースした。 https://github.com/woothee/woothee-php/releases/tag/v1.8.0 Packagistにも公開されている。 https://packagist.org/packages/woothee/woothee#v1.8.0 リリース作業が初めてだったので、@yuya_takeyama さんに手順を教えていただいた。Gith…

woothee-phpのtravis-ci.ymlを見直した

woothee-phpのコミット権をもらっているのだが、いつのまにかTravis CIでPHP 5.3のテストが失敗する状態になってたようで、修正のプルリクエストを頂いたのでありがたくマージさせてもらった(一ヶ月以上放置してしまってすみません)。 内容としてはテスト…

railsなしのwebアプリ開発 (2) アプリケーションサーバ

アプリケーションサーバについて。 たしかrackを使うはずなので、rackについて調べる。 GitHub - rack/rack: a modular Ruby webserver interface Rack解説 - Rackの構造とRack DSL - Qiita 第23回 Rackとは何か(1)Rackの生まれた背景:Ruby Freaks Lounge…

railsなしのwebアプリ開発

いきなりRailsから触り始めたのでアプリケーションサーバとかRailsがいい感じにやってくれてることがよくわかってない。 一度基本に立ち返ってみる。 アプリケーションサーバ これはrackを使うのだろう。 DB接続 mysql2を使う? テンプレートエンジン わから…

Crowi

最近Crowiを触っている。 CrowiはUIがjQueryで組み立てられてて、新しい機能はReactで実装されている。 Reactの範囲がまだ狭いので、全体の動作が把握しやすくReactの勉強にちょうどいい。 既存処理のReact化をちょっとずつやっていこうと思う。

browserifyを試す

とある案件でJavaScriptでブラウザ判別をする必要があり、それではとwoothee-jsを使った。1ファイルにまとまってるファイルがあったので今回はそれを使ったけど、npmのパッケージが用意されてるのでbrowserify使ったらどうなんだろうと思って試してみた。 ま…

第2回関西ソーシャルゲーム勉強会に参加しました

参加してきました。 http://atnd.org/events/32096迷子になってなかなか会場にたどり着けなくて思いっきり遅刻しました。大阪駅周辺はほんとダンジョンです。後半の二つの発表を聴けました。 Varnish導入事例 varnishは設定を専用の言語で書いてC言語に変換…

Re: CakePHP 2.x系の更新時のSQL発行回数を減らしたい

http://damepg.hatenablog.com/entry/2012/09/08/134126ちょうど最近同じことやってました。 僕の場合は、updateAll()で対応しました。元エントリの例にならうと、こんなかんじ。 updateAll( array('point' => $this->escapeField('point') . ' + ' . $this-…

Cookbook のコミッタになりました

昨日から、Cookbookのコミッタになりました。 もうちょっと正確に言うと、cakephp/docsのリポジトリへのコミット権を与えられました。 具体的には、リポジトリに直接コミットしたり、pull requestをマージしたりできるみたいです。Cookbookのコミッタなので…

CakePHPのドキュメントにpull requestした

まだ勝手がよく分からないので、とりあえずwarningつぶすのと左のメニューの並びを直すのをやりました。https://github.com/cakephp/docs/pull/329 https://github.com/cakephp/docs/pull/330どちらも無事に取り込まれてまずはよかったです。もうひとつ、ト…

CakePHPのログシステムを理解する

Cakeのログまわりはあまり使ってなかったので、調べてまとめてみました。 ※CakePHP 2.0のコードを元に書いていますが、1.3とか2.1とかでもだいたい同じみたいです。 ログシステムの構成 CakeLog CakeLogInterface の二つのクラスで構成されています。 「Cake…

気になるプロダクトなど

ChiliProject Redmineから派生したやつ。アップデートが早そう?CandyCane RedmineのPHP移植。設置が簡単なのが魅力。REST API対応したらいろいろ夢が広がりそう。Pivotal Tracker タスク管理するやつ?iPhoneとかにも対応してるらしい。Amon2 PerlのWEBアプ…

5.2でprivateとかprotectedなプロパティを取得する方法

PHP

5.3ならReflectionProperty::setAccessible()でいけるけど、5.2では定義されてない。PHP Manualの下のコメントに解決方法がかいてあったので、参考にしてやってみた。 http://jp2.php.net/manual/ja/reflectionproperty.setaccessible.php#98383対象のクラス…

HomebrewでPHP 5.3.8をインストール

Mac

HomebrewでMacにPHP 5.3.8をインストールした。 このまえとちょっと手順が違っているので改めてメモ。https://github.com/adamv/homebrew-altで本家Homebrewには含まれていないソフトのFomulaが公開されてて、PHPもある。まずオプションの確認。 $ brew opti…

emo-framework日記 #2

emo-framework用のプロジェクトをXcodeで作ってみる。 プロジェクト作成 Xcodeの新規プロジェクト作成画面で、emo-frameworkの「An Application」という雛形があるのでそれを選ぶ。次にプロジェクトの情報を入力する画面になるので、以下のようにした。 Prod…

emo-framework日記 #1

iOS/Android両対応で2D特化のフレームワークを探してて、ニーズにぴったりだったので試してみることにした。 emo-framework - Lightweight 2D game framework for Android and iOS - Google Project Hosting Android/iOSの両プラットフォームに対応した軽量2…

[Emacs]hatena-diary-modeをいれた

hatena-diary-mode For Emacshatena-diary-modeから投稿テスト

HomebrewでPHP5.3.6をインストールする

Formulaとあわせて手順を公開されてる記事があったのでそちらを参考に。 Formulaを落としてきて所定のディレクトリに配置。 $ curl -O https://github.com/ampt/homebrew/raw/php/Library/Formula/php.rb $ mv php.rb `brew --prefix`/Library/Formula イン…

いろんな言語で一時ディレクトリ作成

ちょっと試してみた。 Perl 実質一行だけ。 Ruby こちらも一行。さらに記述が簡潔。 Python Pythonは自分で削除しないといけないみたい。 PHP PHPェ...

ユーザー領域にPEARをインストールする

PHP

システムとは別の場所にPEARをインストールする手順。たぶんPerlでいうところのlocal::lib的なもの。すでにシステムにPEARがインストールされているのが前提。ここでは~/local/php以下にインストールすることにする。個別PEAR用の設定ファイルの生成 # イン…

swfedのインストール on Homebrew@Mac OS 10.6.6

HomebrewなMac環境でswfedをインストールするときにちょっとはまったのでメモ。環境 $ php -v PHP 5.3.3 (cli) (built: Aug 22 2010 19:41:55) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies $ bre…

第2回 関西アンカンファレンスに参加した

当日のセッション一覧をid:iseebiさんが作成されています。感謝! http://d.hatena.ne.jp/iseebi/20110108/p1以下聴いたセッションのメモ。 「PHPがこの先生きのこるために何か」PHP光源氏計画 (@tbsmcdさん) Titanium & PHPでデスクトップアプリを作る たい…

UINavigationControllerのアニメーションをカスタマイズしたい(未解決)

UINavigationControllerのアニメーションをカスタマイズしたいなと思って、ググってたらこんな情報があった。iphone - UINavigationController Custom Transition Animations - Stack OverflowCore Animationを使ってアニメーションさせて、アニメーションが…

MacBook Airを買った

Mac

買っちゃいました。酔った勢いで。11インチのやつを。いままで勉強会に参加するときとか外出時はネットブック(VAIO W)を使ってたけどスペックや重量に不満があって、それについ最近おしごとでiPhoneアプリつくりはじめてて、そこへきてのMacBook Air発売な…

IO_SWFをラップしてSWFをいじるクラスを書いた

PHP

GREE Engineers' Blogで連載中の「SWFバイナリ編集のススメ」を参考にIO_SWFを使ってSWFをいじってみたけど、わりとローレベルな知識や操作を要求されるのでそのへんを簡単にできるようにしてみた。 JPEG以外の画像の処理はかなりあやしいので今後の連載の解…

動作環境確認をコマンドラインで

動作環境確認用のcheck.phpはコマンドラインでも動くみたい $ php web/check.php ******************************** * * * Symfony requirements check * * * ******************************** php.ini used by PHP: /etc/php5/cli/php.ini ** WARNING ** *…

Symfony2事始め

こんどのPHP MatsuriではSymfony2で何か作ろうと思うので、その下調べ。ちなみに環境はUbuntu.10.04 & PHP 5.3.2。Quick Tourに沿ってすすめていく。 http://docs.symfony-reloaded.org/quick_tour/index.htmlとりあえず作業ディレクトリを用意。 $ cd ~/pub…

いままでPEARのコマンドにショートカットがあるのを知らなかった

PHP

PEARコマンドって $ pear install ほげほげ とか $ pear list-upgrades とか打ちますが、まあこれで別に疑問に思わなかったんですが、何気なくヘルプを見たら $ pear help Commands: 〜省略〜 Usage: pear [options] command [command-options] <parameters> Type "pear </parameters>…

DB接続設定を連想配列で

ひさしぶりにEthnaで小ネタ。etc/sample-ini.php array( //...snip... // @see http://pear.php.net/manual/ja/package.database.db.intro-connect.php 'dsn' => array( 'phptype' => 'mysql', 'username' => 'rw_user', 'password' => 'password', 'hostsp…