PayPayリレーキャンペーンがややこしいのでまとめた

昨日(7/8)から始まったキャンペーンが詳細を読むとすごいややこしいので試しながら簡単にまとめました。 間違ってたらごめん。 知人友人以外を巻き込むとトラブルになると公式も言ってるから気をつけましょう。

paypay.ne.jp

送る側

1000円を誰かに送ると10〜1000円がもらえる

注意点

  • 送った額を上限に最大1000円が当たるので1000円を送るのが効率的
  • 同じ人に2回以上送っても無駄
  • 複数人に送れば最大2500円までもらえる
  • 自分でチャージした残額しか送れない
受け取る側

送金を受け取るとリレーウォレット(1000~10000円)が発生し、そのうち一部(10~1000円)がもらえる

注意点

  • リレーウォレットの残高は他の人に送って残高が0になるまでリレーする
  • リレーウォレットは最初に受け取ってから48時間で消滅
  • 違う人から受け取ればリレーウォレットは何度も発生するので最大2500円までもらえる
  • 最初に送った人にリレーウォレットは送れない、自分が送ったリレーウォレットも受け取れない
  • (追記)そもそもリレーウォレットが当たらない場合もある

まとめると最初に送る1000円用意して複数人でぐるぐる回せば5000円までもらえる。たぶん。

BitTorrent SyncでMacのiTunesライブラリをAndroidに同期する

f:id:ltdx:20140215005640p:plain

目的と条件

  • MaciTunesライブラリをAndroidに同期したい
  • ケーブルをつなぐのは面倒なのでワイヤレスで
  • iTunesライブラリはこわしたくない

BitTrrent Syncを使う

BitTorrent Sync Beta
http://getsync.com/

これを使う理由は、

  • P2Pなので同期が速い
  • Mac側を読み取り専用にすることでiTunesライブラリの誤操作を防げる
Macの設定

f:id:ltdx:20140215004940j:plain

f:id:ltdx:20140215004947j:plain

Androidの設定

f:id:ltdx:20140215005528p:plain

PHPでUnixタイムスタンプを使わないで日時を比較する

前回はUnixタイムスタンプを使いましたが、2038年問題があるので使わないほうがいいらしいです。DateTimeクラスだけでUnixタイムスタンプを使わないで日時を比較する書き方にします。

diffメソッドを使う

PHP: DateTime::diff - Manual
http://php.net/manual/ja/datetime.diff.php

DateIntervalオブジェクト を返すので、formatメソッドで分単位で比較できるように整形します。書き方を間違えなければマイナス値にはならないので下の書き方でいいかも。

<?php
$dt1 = new DateTime('2013-08-01 11:55');
$dt2 = new DateTime('2013-08-01 11:50');

$diff = $dt2->diff($dt1);
$diffMin = $diff->format('%r%d%h%i');

if ($diffMin >= 0 && $diffMin <= 5) {
    echo '5分以内です';
    } else {
    echo '5分以内じゃないです';
}

<?php
$dt1 = new DateTime(); // 現在日時
$dt2 = new DateTime('2013-08-01 11:50');

$diff = $dt2->diff($dt1);
$diffMin = $diff->format('%d%h%i');

if ($diffMin <= 5) {
echo '5分以内です';
}

PHPでTwitter APIで取得した日時と現在日時を比較する

やりたいこと

 

 

  • Twitter APIで取得した日時はこんな感じ

 

 

  • Sat Jul 27 23:51:57 +0000 2013

 

 

  • これと現在日時を比較したい

 

 

  • 処理しやすいようにUnixタイムスタンプに変換する

 

 

最初はクラスと関数を混ぜて書いてみたけど、クラスだけ、関数だけで書けるようなのでやってみた。

 

[php]

<?php

// DateTimeクラスで書く

$dt1 = new DateTime(); // 現在日時

$dt2 = new DateTime('Sat Jul 27 23:51:57 +0000 2013');

 

echo $dt1->format('U') - $dt2->getTimestamp();

[/php]

 

[php]

<?php

// 関数で書く

$dt3 = time(); // 現在日時

$dt4 = strtotime('Sat Jul 27 23:51:57 +0000 2013');

 

echo $dt3 - $dt4;

[/php]

 

実行結果はどちらも同じです。関数を使ったほうが短くかけるけど、クラスを使ったほうがあとで見直すときに何をやっているかわかりやすいのかもしれない。

format('U')とgetTimestamp()は同じ処理だけど後者のほうがわかりやすい。