PHPから得られたUNIX時間(1970年1月1日からの秒数)のデータをEXCELで扱いたいのですが、
EXCEL上で、UNIX時間の数値を、日付データと時間データに変換するにはどうすれば良いのでしょうか?
※AccessAnalyzer(http://ax.xrea.com/)からダウンロードした生ログのログイン時間をEXCELで分析するのが目的です。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>PHPから得られたUNIX時間(1970年1月1日からの秒数)


これがA1セルにあるとして、
="1970/1/1"+A1/86400

上記計算で得られたシリアル値を表示形式で日付けと時間にすれば良いのでは?
    • good
    • 4
この回答へのお礼

早速のご回答ありがとうございました。
一発でExcelに変換できました。ありがとうございました。

お礼日時:2004/09/27 16:44

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q日付の計算方法(1970年以前のデータを含む)

過去の日付のデータがあって、今日までのの経過年月日を求めたいです。
(例)
 データ 1980年1月5日
 本日が2004年2月6日なので、求めたい結果は24年1月1日
日付のデータには1970年以前のデータも含まれるためタイムスタンプ(グリニッジ標準時)が使用できません。
関数などを使って簡単に求める方法はあるのでしょうか?
どのようにしたら求められるかわかる方教えていただけませんでしょうか。
よろしくお願いいたします。

Aベストアンサー

年と月だけ得られれば良いという事であれば、それほど難しくないです。

<?php
$today = getdate();
print("本日 $today[year]年$today[mon]月$today[mday]日\n");

$data_y = 1980 ;
$data_m = 1 ;
$data_d = 5 ;
print("データ $data_y年$data_m月$data_d日\n");

if ( $today[mday] < $data_d ){
$data_m ++ ;
}
if ( $today[mon] < $data_m ){
$data_y ++ ;
}

$kekka_y = $today[year] - $data_y ;
$kekka_m = $today[mon] - $data_m ;
print("結果 $kekka_y年$kekka_m月\n");
?>

こんな感じでいかがですか?

Qhttp://とhttps://のどちらでもマッチングできる正規表現

http://とhttps://のどちらでもマッチングできる正規表現の書き方が分かりません。aタグの中のhref="のあとのURL部分にhttpでもhttpsのどちらでもOKのマッチングをかけたいです。
具体的にはhttp://www.aaa.co.jpでもhttps://www.aaa.co.jpのどちらでもpreg_match_allでマッチングをかけたいです。
$count=preg_match_all("正規表現",$URL,$maches);
という感じでhttpかhttpsのURLに引っ掛けたいです。
教えてください

Aベストアンサー

$count = preg_match_all('/^(https?:\/\/.+)$/', $URL, $matches);

実際に使うならもっと厳密にチェックする必要があるでしょう。

QX軸が秒単位Y軸が何秒ごとの数を表したグラフを作る

X軸が秒単位、Y軸が何秒ごとの数を表したグラフを作る際に書いたコードなのですが、
データが増えすぎると処理時間が長くなるので、もっと処理速度の速いアルゴリズムはないでしょうか?
class JsonDate{
public $start_time;//エポックタイム
public $end_time;//エポックタイム
public $duration = 2;//単位は秒

function getDateCounts(){
$this->start_time = 1369706475;
$this->end_time = 1369706492;
/*
$dates配列の中身は昇順です
*/
$dates = array(
1369706475,
1369706477,
1369706478,
1369706479,
1369706481,
1369706486,
1369706486,
1369706487,
1369706489,
1369706492,
);
$dateCounts = array();
for($to = $this->start_time + $this->duration;$to < $this->end_time; $to+=$this->duration){
$from = $to - $this->duration;
if(!isset($dateCounts[$to]))$dateCounts[$to] = 0;
foreach ($dates as $i => $date){
if($from < $date ){
if($date <= $to){
$dateCounts[$to]++;
}else{
break;
}
}else{
unset($dates[$i]);
}
}
}
return $dateCounts;
}
}
$JD = new JsonDate();
$dateCounts = $JD->getDateCounts();
print_r($dateCounts);

結果は
(
[1369706477] => 1
[1369706479] => 2
[1369706481] => 1
[1369706483] => 0
[1369706485] => 0
[1369706487] => 3
[1369706489] => 1
[1369706491] => 0
)

X軸が秒単位、Y軸が何秒ごとの数を表したグラフを作る際に書いたコードなのですが、
データが増えすぎると処理時間が長くなるので、もっと処理速度の速いアルゴリズムはないでしょうか?
class JsonDate{
public $start_time;//エポックタイム
public $end_time;//エポックタイム
public $duration = 2;//単位は秒

function getDateCounts(){
$this->start_time = 1369706475;
$this->end_time = 1369706492;
/*
$dates配列の中身は昇順です
*/
$dates = array(
1369706475,
1369706477,
1369706478,
1369706479...続きを読む

Aベストアンサー

(私の頭がカタいだけかもしれませんが)ちょっとこれだけでは何をしているのか分かりづらいですねぇ・・・

とりあえず他の回答者さんのために整形したコード貼っておきます
http://ideone.com/Qk3Ld9

Qまとめ:DBに接続し、値を表示・追加・更新・削除 // //     追加 → 18add.php(入力) → 18addconf.php(確認) → 18

PHPでの開発をしたいのですが、何から手をつけていいのかわからない状態です。

どんなふうに作ればいいのか全くわかりません。

まとめ:DBに接続し、値を表示・追加・更新・削除
//
//     追加 → 18add.php(入力) → 18addconf.php(確認) → 18addcomp.php(実行) → 18addcomp.html(完了表示)
// 更新 → 18edit.php(入力) → 18editconf.php(確認) → 18editcomp.php(実行) → 18editcomp.html(完了表示)
//     削除 → 18delconf.php(確認) → 18delcomp.php(実行) → 18delcomp.html(完了表示)

風に作るよう指示はいただいているのですが、全く何のことかわかりません。

助けてください。

Aベストアンサー

なるほど、ある程度はわかるという前提ですね?

フローチャートを書くとイメージしやすいかもしれません。
WEBアプリの場合、入力、確認、登録(実行)、完了は処理をわける
必要性が高いです。そこはわかりますね?
つまり入力後いきなり登録ですと、必要なデータが抜ける可能性が
あるからです。(そのリスクを理解した上で省略することは可能ですが)
また登録後に完了に移るのは、リロードによる多重登録を防ぐ
意味合いだと思います。

PHPの処理としては、入力画面は普通にHTMLレベルの処理です。
確認画面では必要であるデータをいわゆるバリデートします。
この場合セッションを使うと処理が楽になります。
確認でエラーを出さなければ登録へ進むボタンを表示します。
登録画面では、確認からセッションで引き継いだデータを
再度バリデートします。データに問題がなければ登録を実行し
完了画面へはheaderで飛ばすとよいでしょう。
フロー的には新規登録も変更も削除もおなじです。

またデータをどのように格納するかなど設計する必要があり
これはSQLなどの知識と技術が別途必要になります。

なるほど、ある程度はわかるという前提ですね?

フローチャートを書くとイメージしやすいかもしれません。
WEBアプリの場合、入力、確認、登録(実行)、完了は処理をわける
必要性が高いです。そこはわかりますね?
つまり入力後いきなり登録ですと、必要なデータが抜ける可能性が
あるからです。(そのリスクを理解した上で省略することは可能ですが)
また登録後に完了に移るのは、リロードによる多重登録を防ぐ
意味合いだと思います。

PHPの処理としては、入力画面は普通にHTMLレベルの処理です...続きを読む

QDATETIME型からUNIX時間を求める方法

現在、MYSQL、DATETIME型 YYYY-MM-DD HH:MM:SS からUNIX時間を求める際に、気軽に質問出来る詳しい方が知り合いにおらずPHP学習中で知識が乏しいため、YYY-MM-DD HH:MM:SS をスペースで分割、をハイフンで分割、HH:MM:SSをコロンで分割、その後、mktimeに当てはめてUNIX時間を求めています。
他に簡単にDATETIME型からUNIXTIME求める関数などがありましたらご教示頂けましたら嬉しいです。

それとも、計算が必要な日時をMYSQLに格納する場合はINSERTする場合にUNIX時間でINSERTし、表示が必要な場合に、DATE関数等で日時として表示する方が良いのでしょうか?

Aベストアンサー

メジャーな形式であればだいたい strtotime でいけると思います。
http://jp.php.net/strtotime


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報