新しいフォルダー

気になったことや勉強したことについて書いていきます

cakephp componentでmodelにアクセス

メモメモ

qiita.com

php その日の0時と23時59分59秒を取得

$s = date("Y-m-d 00:00:00", strtotime($s_date)));
$e = date("Y-m-d 23:59:59", strtotime($e_date)));

 

日付Aから日付Bの間に存在する日にちの0時と23時59分59秒を取得

 

$s = strtotime(date("Y-m-d 00:00:00", strtotime($s_date)));
$e = strtotime(date("Y-m-d 23:59:59", strtotime($e_date)));
$sec = 60 * 60 * 24;
$day_list = array();
for($i= $s ; $i <= $e; $i+=$sec){
$day_list[] = array('s_date' => date("Y-m-d 00:00:00", $i), 'e_date' => date("Y-m-d 23:59:59", $i));
}

 

php foreachで&を使う場合の注意点

foreach文で配列要素の値を変更する - 繰り返し処理 - PHP入門

上記のリンクに全部載ってますが、かならずUNSETしましょう

$pricelist = array(80, 100, 120);

foreach ($pricelist as &$value){
  $value *= 1.05;
}
unset($value);

今回は要素の値に対する参照を取得し、各要素の値を1.05倍して再度格納しています。最後に「unset」関数を呼び出しているのは、foreach文が終了しても変数「value」には配列の最後の要素に対する参照が設定されたままのため、その後のプログラムで間違って要素の値を書き換えないように変数の割り当てを明示的に解除しています