[PHP] 配列の空白要素を除去するスマートな方法

by unosk on 2011-09-04 01:00

// $arr = array(
//   [0] => string(0) "",
//   [1] => string(4) "hoge",
//   [2] => string(4) "hoge",
//   [3] => string(0) "",
// );

$arr = array_filter($arr, 'strlen');

// $arr = array(
//   [0] => string(4) "hoge",
//   [1] => string(4) "hoge",
// );

Symfony1.4でSSL

by unosk on 2011-07-29 01:33

かなり久々の投稿になってしまいました。

今回はSymfony1.4で特定のアクションでSSLページにリダイレクトさせる方法です。

こんなのコア機能に入ってると思ってたら、見つからないし、プラグイン見つからない(古いバージョン対応のはあったけど)。

しょうがないから、自分でFilter書くかぁと思っていたところ、そのまんまズバリのサンプルをみつけました!!

http://blog.adryjanek.eu/2010/12/30/symfony-14-and-ssl-playing-with-symfony-filters/

[Symfony] SoftDeleteの論理削除でハマった

by unosk on 2011-05-24 15:12

久々の投稿です。

Symfony1.4での話です。
現在進行中のプロジェクトでSymfonyがよさげだったので導入してみたんですが、SoftDeleteビヘイビアでの論理削除で見事にハマった。

AdminGeneratorで作成した管理画面からアイテムを削除するとdeleted_atにはきちんと削除日時が保存されるけど、一覧画面では削除したはずのアイテムも表示されてしまう。。。

ググっても原因はわからなかったのでソースを読んでみる。すると、こんな関数を発見。

Doctrine_Template_Listener_SoftDelete->preDqlSelect

雰囲気からするとSelect実行時のSQL生成前にフックしてるようだ。
そこでログを仕込んで見ると、この関数が呼ばれていないことが判明!!原因はきっとこいつに違いない!

さっそくこの関数名でググってみると、Doctrine::ATTR_USE_DQL_CALLBACKSというを設定を有効にしてやらなきゃいけないようだ。
ということで見つけた参考記事をもとに修正。

無事正しく実行されました。

[WordPress] 最近のプロジェクトで使用したおすすめ10プラグインまとめ

by unosk on 2011-04-07 08:30

最近Wordpressを利用して情報サイトを開発いたしました。
そんなWordspressのカスタマイズに欠かせないのがプラグインという存在。探せばいろいろ便利なものがあり、開発を大幅に手助けしてくれます、使わない手はありませんよね。

そこで、今回は先日開発したシステムで利用して、いいと感じたプラグインを紹介します。
すべて有名なやつだと思うので、これからWordpressを利用する方はぜひ参考にして下さい。
ちなみに簡単な紹介ですので、詳しい使い方は各々ググッてください。
Read the rest of this entry »

[Android] XperiaArcを購入したので旧Xperia(X10)と比較してみる

by unosk on 2011-03-26 00:49

といっても購入したのは妹ですが。
これで我が家のAndroid保有者は5人中3人となり、Android布教活動は順調に進んでいます。

XperiaArcは最新OS2.3がインストールされたドコモの最新Android端末です。
2.3で改善されたというデザインですが、たしかに以前感じた芋っぽさは感じませんが、やはりiPhoneと比べてるとまだまだといういう印象です。

と前書きはこれくらいにして、比較に入ります。
Read the rest of this entry »

[Android] SkypeAccess アクセスポイントマップをアップデートしました

by unosk on 2011-03-21 06:13

先日の記事で書きました、SkypeAccess アクセスポイントマップをver1.3にアップデートしました。

UIと機能を一新し、格段に使いやすくなりました!!

Read the rest of this entry »

[Android] MapViewの表示領域内の緯度経度を取得する

by unosk on 2011-03-19 09:59

MapViewで表示されてる画面の端から端までの緯度経度を取得する方法です。
Projectionクラスを使用します。

Projection projection = mMapView.getProjection();
GeoPoint point1 = projection.fromPixels(0, 0);
GeoPoint point2 = projection.fromPixels(mMapView.getWidth(), mMapView.getHeight());

int minLat = point2.getLatitudeE6();
int maxLat = point1.getLatitudeE6();
int minLng = point1.getLongitudeE6();
int maxLng = point2.getLongitudeE6();

Overlayに表示するアイテムの数が1000とか超えると動作がもっさりしてくるので、
表示領域内に存在するアイテムだけを抽出できればサクサク動きます。

[Android] アプリ内のすべてのクラスを取得する

by unosk on 2011-03-19 09:47

こうゆうニーズってありますよね。
自分も以前、Android用のORMを自作しようとしていて特定のアノテーションのついたクラス一覧がほしいって場面がありました。

いろいろ調べてみると
なんでもAndroidアプリケーション(apk)の中にはDalvik VMの実行形式であるclasses.dexファイルが含まれてるらしい。
そして名前の通り、こいつからクラスの一覧を取得できます。
Read the rest of this entry »

[Android] SkypeAccess:JP (アクセスポイントマップ)

by unosk on 2011-03-17 09:53

先ほどの記事で紹介いたしました、SkypeAccessのアクセスポイントの地図表示ですがAndroidアプリとしても公開いたしました。

ダウンロードはこちらからどうぞ。

追記 字ずらが悪いのでアプリ名を”SkypeAccess アクセスポイントマップ”と変更しました。

QRコード

QRコード

SkypeAccessのHotspot一覧

by unosk on 2011-03-17 08:13

3月11日の東日本大地震の件を受けてSkypeが無線LAN(Wi-Fi)サービスSkype Accessを使ったインターネット接続を日本国内で無料で提供してくれています。

電話回線日本国内地震で連絡が取りにくくなった被災者やその家族、友人と、連絡を取ることができるよう活用しましょう。

さて、そのアクセスポイントの設置場所ですが公式サイトではエクセルファイルでまとめられてます。今回はそれをGoogleMap上で表示させ、より分かりやすくしてみました。よろしければお使いください。

追記
Android版も公開いたしました。

KMLファイルを公開しました。


大きな地図で見る