PR : ホームページテンプレートなら、テンプレートモンスター PHP プログラム配布

PHP session 破棄

2010 年 6 月 11 日 admin コメントはありません

PHPでセッションを完全に破棄する

<?php
// セッション変数を全て解除する
$_SESSION = array();

// セッションを切断するにはセッションクッキーも削除する。
// Note: セッション情報だけでなくセッションを破壊する。
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), ”, time()-42000, ‘/’);
}

// 最終的に、セッションを破壊する
session_destroy();
?>

参考サイト:http://d.hatena.ne.jp/Kappuccino/20080726/1217049706

カテゴリー: 雑記 タグ: , ,

php OS環境に合わせて自動改行

2010 年 6 月 8 日 admin コメントはありません

PHP_EOL

PHPには定義済み定数に「PHP_EOL」があり、これを使用することで改行を表示させることができます。
Linux、Mac、Windowsなどの異なるOS環境間で改行コードを内部的に自動で切り替えてくれます。
例えば、Macの場合には「¥n」や「¥n¥r」、「¥r¥n」などとコードに記載しても、改行表示されません。

カテゴリー: 雑記 タグ:

PHP 配列を展開する foreach

2010 年 6 月 8 日 admin コメントはありません

foreachで、配列を展開する

foreach ($array as $key => $val) {
echo $key ;
echo $val;
}

カテゴリー: 雑記 タグ: ,

PHP 配列から空要素を削除する

2010 年 6 月 8 日 admin コメントはありません

以下のように実行することで、配列内から空要素を削除することが出来ます。

//空要素を削除
$link_accept_list = array_merge(array_diff($link_accept_list, array(”")));

カテゴリー: 雑記 タグ: , , , ,

PHP 小数点の管理 round

2010 年 6 月 2 日 admin コメントはありません

小数点以下第2位で四捨五入
$num2 = round($num1,2);
echo $num2;

これで$num2は小数点第二位まで表示されます。(12.22、5053.35など)

カテゴリー: 雑記 タグ:

PHP 日付の減算・差分を求める

2010 年 6 月 1 日 admin コメントはありません

define( “ONE_DAY_SEC”, 24 * 3600 );

// 日付けの差分をとる関数
function dateDiff( $date1, $date2 ) {
return ( strtotime( $date1 ) – strtotime( $date2 ) ) / ONE_DAY_SEC;
}

// 実行サンプル
$date1 = date(’Y/m/d’);
$date2 = “2010/06/01″;

$result = (dateDiff( $date1, $date2 )+1);

これで$resultには、2010/06/01 から 現在の日付までの経過日数を求めることが出来る。

参考サイト:http://q.hatena.ne.jp/1169605670

カテゴリー: 雑記 タグ: , , ,

PHP 配列の並び替え

2010 年 5 月 21 日 admin コメントはありません

asort ($res_get_email,SORT_STRING);

sort (配列,パラメータ);
このパラメータを次の3つから選択することで並べ方をコントロールすることができます。
SORT_REGULAR – 通常通りに項目を比較
SORT_NUMERIC – 数値的に項目を比較
SORT_STRING – 文字列として項目を比較

参考URL:http://w1.nirai.ne.jp/freeze/main/file12.html

カテゴリー: 雑記 タグ: , ,

PHP 配列の結合

2010 年 5 月 20 日 admin コメントはありません

$array3 = array_merge($array1,$array2);

カテゴリー: 雑記 タグ:

htmlソース内からメールアドレスを抽出

2010 年 5 月 20 日 admin コメントはありません

//mailto:が使用されているメールアドレス

preg_match_all(”/mailto:(.+?)\”/s”, $html2, $matches);

//mailto:は使用されておらず、@を基準に判別

preg_match_all(’/[-.\w\/]+@[-._[:lower:]\d]+\.[[:lower:]]{2,4}/s’, $html2, $matches);
または、
preg_match_all(’/[-._a-zA-Z0-9\/]+@[-._a-z0-9]+\.[a-z]{2,4}/s’, $html2, $matches);

正規表現については、精度の問題もあり、意見が分かれるところだとは思いますが、私の場合は、これで十分だったので、メモとして残しておきます。

データベースに機種依存文字の入ったCSVデータをインポート

2010 年 5 月 19 日 admin コメントはありません

phpMyAdminにて、データベース側にインポートする際、エンコードの設定を「cp932」に設定することで、機種依存文字を文字化けせずにインポートすることが可能になります。

*今回は、機種依存文字を含むsjisのCSVをutf8のデータベースにインポートしました。

参考サイト:http://smiu2it.blog.so-net.ne.jp/2009-04-16