【PHP】桁数を統一できるカウンタ。注文番号などに使う!

PHPでDBを使わずに、注文番号の管理をしたいと先方に言われたので、
カウンターを作って、ゼロ埋めして返すFunctionを作成しました。

引数には、カウンタのファイル名と桁数を入力すると、
返り値に注文番号を返します。

■実行

$order_no = $this->counter(dirname($_SERVER['DOCUMENT_ROOT']).'/approot/count.txt',6);

■関数

/*
 * @access  public
 * @param     String    $filename    カウンタファイル保存先
 * @param     Int    $sprintf    桁数を統一
*/

public function counter($filename,$sprintf = 1){
  //ファイルがなかったら作成する
  if (!file_exists($filename)) {
    touch( $filename );
    chmod( $filename, 0777 );
  }
  $fp = @fopen($filename,"r+") or die("ファイルが開けません");
  flock($fp, LOCK_EX);
  $count = fgets($fp, 64);
 
  if( (int)$count === 0 ){
    //ファイルがない場合のデフォルトは1
    $count = 1;
  }else{
    //数値が取得できたら連番をつける
    $count++;
  }
  rewind($fp);
  fputs($fp, $count);
  fclose($fp);
  return sprintf('%0'.$sprintf.'d', $count);
}

iPhone/Androidを同時に書き出せるTitanium Mobileがすごい

iPhoneネイティブ開発を行なっている人が、Android版のアプリを開発するとなると単純に工数が2倍になります。

そこで、titaniumにて開発を行うと同時にiPhone・Androidを書き出すことができるんです。

Flashなどで作成すると書きだしたアプリはAirランタイム上で動作することになりますが、
Macでtitaniumを使用することにより、ネイティブアプリを開発したように通常通りアプリが起動できます。

ちなみに、titaniumの読み方は、「チタニウム」ではなく「タイタニウム」と読むそうです。

Tarminalもデフォルトで使用できるし、EclipseベースだからPHP開発も問題なくできるので、開発環境はしばらくこれにします。

当然ですが、Macを使用していないとiPhoneアプリを書き出せないので注意です。

titanium mobile

【Mac】Finderで隠しファイルを表示する方法

.がファイル名の最初につくような隠しファイルは、
デフォルトでは非表示になっているので表示する方法です。

ターミナルを開き、下記コマンドを実行。
killall FinderでFinderを再起動すると隠しファイルが表示されるようになっています。

■表示するコマンド
$ defaults write com.apple.finder AppleShowAllFiles TRUE
$ killall Finder

■非表示にするコマンド
$ defaults write com.apple.finder AppleShowAllFiles FALSE
$ killall Finder

【Windows】リモートデスクトップのシャットダウン方法

リモートデスクトップシャットダウン

Windows Server系のOSであれば、シャットダウンの理由を入力すると手軽にシャットダウンできますが、

XP/Vista/7では、リモートで入ったはいいけど、どうやってシャットダウンするの?って感じです。

シャットダウンボタンがログオフ/ロック/切断に切り替わっている、、、

「Ctrl」+「Alt」+「End」を同時に押すと、画面が切り替わって、右下にシャットダウンアイコンが表示されます。

そこからだと、シャットダウンや再起動ができるようになります。

【Fedora14】KDEでの日本語設定

Live CDから普通にインストールしたつもりでしたが、何故か日本語設定ができない…

いろいろ調べると、ターミナルから少しコマンド入れればいいみたいです。

vi /etc/sysconfig/i18n
LANG=”ja_JP.UTF-8″
source /etc/sysconfig/i18n

コマンド入力したら、システム設定のLocalで、
CountryをJapan
Languagesにjapaneseを右矢印で登録してあげると日本語設定ができました。