PHP の実行している OS の種類を取得する方法

どんなOSでも動くPHPシステムを構築する場合、
設定ファイル用意しておいて、OS固有の設定をすればいいだけなんだけど、
例えばファイルパスの書き方とか、linuxとwindowsでは違うわけで、
そういう細かい処理を自動でできればと思った次第です。
例えばPHPとMYSQLは同じでも、windowsで開発してlinuxで公開するとか。

で、PHPにはそれらを手助けしてくれる定数がある。

DIRECTORY_SEPARATOR; // ディレクトリの区切り文字
PATH_SEPARATOR; // パスの区切り文字

これと、OSを取得する定数「PHP_OS」を使えば、
ファイルパスを気にする必要もなくなる。

PHP_OSで

<?php
 if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
   echo 'このサーバーは Windows です!';
 } else {
   echo 'このサーバーは Windows ではありません!';
 }
?>

 

早く実装せねば。

配列から値のない要素を取り除く

・値のない要素を除いた配列を作りたい。
・連想配列の場合はキーは維持し、普通の配列の場合は詰める。

function array_tidy ($array, $unique=false) {
  if(!is_array($array)) return $array;
  $assoc = (array_keys($array)!==range(0, count($array)-1)) ? true : false;
  $array = ($unique) ? array_unique($array) : $array;
  $array = array_diff($array, array('',null)) ;
  return ($assoc) ? $array : array_values($array);
}

 

参考サイト
SIMPLERAIGHT

画面キャプチャーソフトの決定版 – FastStoneCapture(無料版)

MACをメインで使用するようになってから、まったく使う機会がやってこなかった画面キャプチャーソフト。
再就職先の会社がwindowsなもんで、必要に迫られて探した。

以前使用していたソフトが使いやすかったが、名前を覚えておらず探すのに苦労したが、
ソフトの特徴をキーワードにしてぐぐって見ると、アホみたいにあっさり出てきた。

それが「FastStoneCapture」
早速ダウンロードしてインストール。
で、起動!

あれ?
trialって出てる。
いつのまにかシェアウェアになっとるがな。

このソフトはツールバー形式でキーボードショートカットキーもあり、
何気に使いやすかったんだけど、そこにつけ込まれたかっ!!

っていっても、あれだけのソフトを開発したのだから、
シェアにする理由もわからなくはない。
無料のソフトが実はスパイウェアってことになるよりは、
全然まし。

しかし、さすがに購入するわけにもいかず(金ない)、

途方に暮れながらネットで解決策を探していると、
なんと作者のサイトに無料版のページが隠れているような。

早速いってみた。直リンクは礼儀としてしません。

4ページ目にあった。
しかも、有料版はver7だけど、無料版はver5。
おまけに「last freeware version」なる文字も。

どんな意図があって掲載続けているのかは知らないが(邪推?)、
遠慮なく使わせていただきます。