初めまして、お世話になります。
PHPに関しては初心者です。

Magpie RSSを使用してフィードをトップページに表示させたいのですが
タイトルは問題ないなく表示されるのですが、日付を表示させようとすると1970年01月01日 と表示され取得出来ない状態です。

MagpieRSSのバージョンは0.72でRSS2.0です。
取得先はwordpress バーション2.61になります。

色々と調べてみて
Magpie0.7より使用できる$item['date_timestamp']という参照方法も試してみたのですがだめでした。
サーバーの問題かと思い複数のサーバーでも試したのですが1970年01月01日と表示されてしまします。

具体的なソースは下記の通りです。

<?php
require_once 'rss_fetch.inc';
define('MAGPIE_FETCH_TIME_OUT', 30); // タイムアウトまでの
define('MAGPIE_CACHE_AGE', 30*60); // キャッシュ更新の時間
$url = 'フィードのURL';
$rss = fetch_rss($url);
$title = $rss->channel['title'];


echo "<li class=\"ItemTitle\"><a href=\"$url\">RSS記事一覧を表示</a></li>\n";
$title = mb_convert_encoding($title, "UTF-8", "auto");

$rss->items = array_slice($rss->items, 0, 10);
foreach ($rss->items as $item ) {
$title = $item[title];
$title = mb_convert_encoding($title, "UTF-8", "auto");
$url = $item[link];
$date_str = date("m月d日 ", $item['date_timestamp']);
if ($date >= time() - 3600 * 24 * 7) {
$date_str = "<EM>" . $date_str . "</EM>";
}

echo "<li class=\"ItemTitle\">$date_str<a href=\"$url\">$title</a></li>\n";
};
$url = $rss->channel['link'];

?>

どなたか対処法をご存じの方がおられましたらご教授頂けると
幸いに思います。

以上、よろしくお願いいたします。

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

A 回答 (2件)

配列のキーは取得するRSSによって違うので、


print_r($rss);で一度構造確認をした方がいいです。

wordpressということなので
$date_str = date("m月d日 ", strtotime($item[pubdate]));
これで表示されないでしょうか
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
配列キーの入力が違っておりました。
お教え頂いたように

$date_str = date("m月d日 ", strtotime($item[pubdate]));

を仕様すると表示されました。
RSSによって違うとのことですので、確認が必要みたいです。

やっと解決いたしました。
誠にありがとうございます。

お礼日時:2008/10/05 12:14

私も同様の問題で悩んでいます。


$item['date_timestamp']だけが空っぽになります。

Apache 2.0.63
PHP 5.1.6
MagpieRSS 0.72
取得しようとしているもの Atom 1.0

これらを試しても解消しませんでした。
http://linux.ohwada.jp/modules/smartsection/item …
http://d.hatena.ne.jp/ms-k/20051224


Apacheのログを見ると、次のNoticeが出ています。

PHP Notice: Undefined index: version in /***/rss_parse.inc on line 173


何が原因でしょうか。
便乗質問で申し訳ありません。

この回答への補足

投稿ありがとうございます。
上記の方法で解決いたしました。
恐らくAtom1.0の配列キーが違うものになっているのが
問題かもしれません。
上記方法はwordpress用ですが、同様の問題で表示されないのであればAtom1.0の配列キーを指定すると直るかもしれません。

補足日時:2008/10/05 12:15
    • good
    • 0

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

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

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

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

Q住宅断熱材について。

新築を建てるにあたって断熱材で迷っております。

グラスウール16k105mmのマグとパラマウントの裸タイプの断熱材で迷っております。
断熱性能は同じで、金額はマグが坪当たり100円ほど安くて、はっ水加工もされているみたいですが、断熱気密で有名な建築家の西方先生はパラマウントを使っているので迷っております。パラマウントの太陽が優れている点があれば教えてください。
西方先生はもっと上の密度を使っているので一概にはいえないですが。

Aベストアンサー

施工する人にとっては裸タイプのグラスウールは扱いたくないでしょう。熱抵抗値を検討し(16Kといっても高性能のものもあります)、性能が同じであれば袋入りのものが良いと思います。パラマウントであれ、マグであれ、製造者よりも物理性能で決めた方が良いと思います。

QRSSデータ表示に関しまして【ギブアップです】

先週からRSSデータの表示について作業が止まっております。
ご存知でしたら、皆様のお知恵をお借りしたいと思い質問させて頂きました。

複数のブログの記事を更新時間順に表示したいと思っています。
こんな感じです。 ⇒ http://blogs.yahoo.co.jp/FRONT/update.html
例えば、同じBLOGから数分後に2度更新されたら、その記事タイトルも表示します。
※1BLOG 1エントリーの表示ではなく、1BLOG 複数エントリーの表示が可能であり、
 あくまで更新時間順に表示します。
また、表示件数も指定したいと思っています。

このようなPHPのサンプルがあるサイトなどご存知でしたら教えてください。
お願い申し上げます。

ちなみに現在作成できているPHPのソースは以下通りで、更新時間順に記事を表示できますが、
記事の表示件数が指定できないので全ての記事を表示してしまいます。
1BLOG5つの記事を読み込んでいき、ソートし表示しています。
表示件数の指定方法がわからず、またプログラムも初めてなので無茶苦茶な作りになっています。
上述のPHPサンプルか以下ソースで表示件数の指定および配列の操作についてご教示お願いします。

<?php
require "xxx/yyy/RSS.php";

// 表示データ用配列の初期化
$showArray = array();

// RSSサイトURL(複数可)
$rdf[] = "http://xxxxxxxxx/xxxxx/";
$rdf[] = "http://yyyyyyyyy/yyyyy/";

// 変数初期値
$num = 0;
$datacnt = 0;

// サイト文字コード(SJIS、EUC-JPなど)
$code = "SJIS";

// 日付ソート関数
function cmp ($a, $b) {
$a = (isset($a['items'][0]['pubdate'])) ? strtotime($a['items'][0]['pubdate']) : strtotime(str_replace("T", " ", substr($a['items'][0]['dc:date'], 0, 19)));
$b = (isset($b['items'][0]['pubdate'])) ? strtotime($b['items'][0]['pubdate']) : strtotime(str_replace("T", " ", substr($b['items'][0]['dc:date'], 0, 19)));
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}

// RSS取得・解析
foreach ($rdf as $k=>$rssurl) {
$r =& new XML_RSS($rssurl);
if (PEAR::isError($r)) continue;
$r->parse();
if ($r->getChannelInfo()) $ch[$k] = $r->getChannelInfo();
$ch[$num]['items'] = $r->getItems();
$num = $num + 1;
}
usort($ch, "cmp");

for ($i=0; $i<$num; $i++) {
// サイト名
$site_title = htmlspecialchars(mb_convert_encoding($ch[$i]['title'], $code, "UTF-8,EUC-JP,SJIS"));
// サイトURL
$site_link = $ch[$i]['link'];

for ($n=0; $n<5; $n++) {
// 記事タイトル
$title = mb_convert_encoding(strip_tags($ch[$i]['items'][$n]['title']), $code, "UTF-8,EUC-JP,SJIS");
// 記事内容
$desc = mb_convert_encoding(strip_tags($ch[$i]['items'][$n]['description']), $code, "UTF-8,EUC-JP,SJIS");
// 記事URL
$link = htmlspecialchars($ch[$i]['items'][$n]['link']);
// 記事更新時間(UNIXタイム
$time = (isset($ch[$i]['items'][$n]['pubdate'])) ? strtotime($ch[$i]['items'][$n]['pubdate']) : strtotime(str_replace("T", " ", substr($ch[$i]['items'][$n]['dc:date'], 0, 19)));
// 記事更新日 http://php.net/date
$date = date("m/d H:i", $time);

$dummy = date("m", $time) . date("d", $time) . date("H", $time) . date("i", $time);

$showArray[$dummy] = "<FONT SIZE=2><a href=\"" . $link . "\" target=\"_new\" title=\"" . $desc . "\">" . $title . "</a>【<a href=\"" . $site_link . "\" target=\"_new\">" . $site_title . "</a>】(" . $date . ")</FONT><br>";
$datacnt = $datacnt + 1;
}
}

// 時間順でソート(必要なのかは良くわからないが上手くいかなかったりする...)
krsort($showArray);

// HTML表示させる
echo(join('',$showArray));
?>

先週からRSSデータの表示について作業が止まっております。
ご存知でしたら、皆様のお知恵をお借りしたいと思い質問させて頂きました。

複数のブログの記事を更新時間順に表示したいと思っています。
こんな感じです。 ⇒ http://blogs.yahoo.co.jp/FRONT/update.html
例えば、同じBLOGから数分後に2度更新されたら、その記事タイトルも表示します。
※1BLOG 1エントリーの表示ではなく、1BLOG 複数エントリーの表示が可能であり、
 あくまで更新時間順に表示します。
また、表示件数...続きを読む

Aベストアンサー

自分自身も趣味で指定したブログの最新記事の表示をさせるものをPHPで作成した事があるんですが、参考URLに載せたサイトの"RSSブロガー"というツールを参考にしました。
恐らくamcacinaさんの考えているものと同じような事が実現できると思います。更新時間順に表示しますし、表示件数も指定できます。件名だけの表示も可能です。
いかがでしょうか?

参考URL:http://php.s3.to/net/

Qアルミ遮熱断熱材について

断熱材について、ここしばらく悩んでいます。

最近「アルミ遮熱断熱材」が良いとお聞きしました。

「遮熱断熱材」とのことですが、
これは単体で断熱材の代わりとなるものでしょうか。
それとも、
グラスウール等の断熱材と併用した方が良いものでしょうか。

ご自宅に使用されている方、
また専門家の方で知識のある方、
使用感についてのご意見、
またアドバイスをいただけましたら幸いです。

何卒よろしくお願い致します。

Aベストアンサー

遮熱材のHPには断熱材と比べて・・、NASAも採用・・云々の宣伝文句が載っています。
空気層もあるから断熱材の代わりになりますってのもありますが、

>これは単体で断熱材の代わりとなるものでしょうか。
>それとも、グラスウール等の断熱材と併用した方が良いものでしょうか。

併用はmustと考えた方がいいですよ。
#No.1の方のおっしゃる通りです

ちなみに、弊宅、西面や屋根面に遮熱機能を持った透湿防水シートを使いました。
効果のほどは分かりませんが、夏場の冷房エアコン使用量はご近所さん(他の工務店で建ててる同じくらいの築年数)よりも少ないようです。
まぁ、暑さに強い&節約してるだけかもしれませんが。

参考URL:http://www.ads-network.co.jp/dannetu-keturo/shanetuzai-01-36.htm

QPHPのエラー表示を変更(非表示)したい

PHPを実行して、上手く処理できないと下記のよなエラー表示がされると思います。

Warning: ~~~(エラーの内容)~~~ on line 17(エラーの行数)

このようなエラー表示を非表示にしたり、エラーが出た場合に別のファイルを参照して表示させる事はできるのでしょうか?

403や404、500のエラー表示は、htaccessで変更できますよね。

phpのエラー表示も変更する事はできるのでしょうか?

アドバイスをお願い致します。

Aベストアンサー

Warning を出力する大抵の関数で「@」を付けて呼び出すことでWarning の出力を抑止できます。

fopen → @fopen

Q床の断熱材の補強をしたいのですが

近所で親戚つきあいをしてる、大工さんにお願いして建ててもらったのですが
断熱材の知識が全く無く
天井・壁の断熱材はすべて自分で仕事の合間・夜に施工しました。
ただ、仕事の都合で
床の断熱材は施工出来ず、大工さんが施工することに
それで、問題が
根太の根太の間に杉板を貼り(断熱材の落下防止)
スタイロフォーム30mmを施工 
すかすかの箇所が多数確認
30mmでは薄と言ったのですが
無視されてしまい、そのまま施工されてしまいました。
何とか、気流止めは、なんか時間を作り自分で施工。

そこで、自分で床下からスタイロフォーム50mmを貼ろうと考えているのですが
杉板 厚さ6mm(断熱材の落下防止)の下から貼ることに成り
断熱材30mmと断熱材50mmの間に6mmのスキマができてしまいます。
6mmのスキマが有っても断熱の性能が確保できるでしょうか。
アドバイスをお願いします。

Aベストアンサー

自分で施工をするとは素敵なことですね。きっと満足できる素晴らしい家ができることでしょう。
さて、質問の回答ですが、6mmの隙間とは杉板のことを言っているのでしょうか?それとも別の何かでしょうか?杉板のことであれば断熱材が離れているというだけであり、空気が流入するわけでないので全く問題はありません。
気流止めはどのようにつけたのでしょうか?断熱材の室内側?それとも室外側でしょうか?
隙間がある部分に外からの冷たい空気が流入してくるようであれば断熱材の効果は確実におちてしまいます。その際、気流止めで冷たい空気が対流しないような状態になっていればそれなりの効果は期待できます。

QRSSに関して

こんばんは。お世話になっております。
只今、テスト的に以下のサイトのソースを参考に、登録していただいた方のブログの一覧表示(更新題名が1件ずつ)が出来るように組んでいるのですが、非常に重たく、他に上手いやり方がある?などと色々と試行錯誤を繰り返している状況です。

http://works.xrea.jp/headline.php

イメージ的に、登録してくれた会員のブログを、ブログランキングサイトのように、検索一覧として1件ずつ更新記事(題名)を表示させたいと考えてます。

ソースの流れは、
while($row = mysql_fetch_array($res, MYSQL_ASSOC)){
 $url = $row["url"];
 require("./rss_index/rss-test.php");
 ・
 ・
以上、検索ファイル
以下、rss-test.php

<?php
require_once 'rss_fetch.inc';
$url = $url;
$rss = fetch_rss($url);
$title = $rss->channel['title'];
$title = mb_convert_encoding($title, "EUC-JP", "auto");

echo "<h5>$title</h5>\n";
$rss->items = array_slice($rss->items, 0, 1);
foreach ($rss->items as $item ) {
$title = $item[title];
$title = mb_convert_encoding($title, "EUC-JP", "auto");
$url = $item[link];
echo "<li><a href=\"$url\">$title</a></li>\n";
}
?>

以上、お忙しい中恐縮ですが、ご指摘も含めアドバイスなど頂けたら幸いです。宜しくお願い致します。

こんばんは。お世話になっております。
只今、テスト的に以下のサイトのソースを参考に、登録していただいた方のブログの一覧表示(更新題名が1件ずつ)が出来るように組んでいるのですが、非常に重たく、他に上手いやり方がある?などと色々と試行錯誤を繰り返している状況です。

http://works.xrea.jp/headline.php

イメージ的に、登録してくれた会員のブログを、ブログランキングサイトのように、検索一覧として1件ずつ更新記事(題名)を表示させたいと考えてます。

ソースの流れは、
while($row =...続きを読む

Aベストアンサー

これは飽くまでも参考って事で

集計する時に直接取りに行くんじゃなく
取りに行くのと集計するものを別にしたらどうかな?
重いのはなかなか取得ができないサイトが混ざってるせいかもしれないし。
時差がでちゃうのは仕方ないけど集計する時は収集済のデータを使うから幾分か早くなると思うんだけど・・・

Q樹脂の成形機に使用される断熱材の役割について

樹脂の成形機に使用される断熱材の役割について

断熱材の使用目的は熱を伝えにくくする事だと思うのですが、断熱材がないと何か問題は起きるのでしょうか?
また、最適な断熱材を選定する際、熱伝導率が小さく、圧縮強度が強い以外考慮すべきことはありますか?

ご回答よろしくお願い致します。

Aベストアンサー

結晶化させるために金型の温度を上げることが目的なわけでしょ?。
成形機まで温度を上げる必要はないわけで、「断熱材」を入れることでそこに「境目」をつけるわけです。

断熱材がないと、金型の温度を上げるのに電力を浪費します。成形機の温度も上げるわけだから。
それに、必要以上に成形機の温度が上がると摺動部の潤滑油の粘度が低下するので、すぐには出なくても長期に亘ると、思わぬ故障が起きたり機械的な寿命を縮めたりします。
タイバーやプラテンにとっても良くはありません。
成形工程も安定しなくなると思われます。なにしろ小さいヒータで、成形機まで温めようとしているわけだから、外気に影響され温度が安定しません。

ずっと昔は冗談抜きで「アスベスト」を一般的に使っていました。
今は「ガラ・エポ(ガラス・エポキシ)」が主流だと思います。
まあ、将来ガラ・エポも健康被害を及ぼす材料だと言われる可能性も無きにしも非ずですが、「加工(切断や穴あけなど)がし易い」こと、「平面度、平行度が良い」こと、「安価」であること。
これくらいだと思います。
数十トン~数百トン程度の圧縮を受けるわけで、金型を取り外したときには再使用できない場合が多々あります。
手軽に加工でき、値段が安いに超したことはありません。
成形機に取り付けるのは「金型」です。
「断熱材」と言えども、成形機に金型と共に取り付ける以上、断熱材も金型の一部となります。
平行や平面が出ていないと、金型自体の平行や平面が出ていないことと同じになります。
よく、「圧縮するから少々はいいだろう」と言われる方がいますが、程度によります。
平面や平行が出ていないと、ガイドピンとガイドブッシュの「軸芯」が出ていない状態で稼働させることになる可能性があります。
ガイドピンとガイドブッシュの「偏磨耗」や、成形品のパート面のズレ、スライドコアの異常動作などの可能性が出てきます。
「熱伝導率が小さく、圧縮強度が強い」以外では、やはり「平行度、平面度」が重要になってくると思います。

結晶化させるために金型の温度を上げることが目的なわけでしょ?。
成形機まで温度を上げる必要はないわけで、「断熱材」を入れることでそこに「境目」をつけるわけです。

断熱材がないと、金型の温度を上げるのに電力を浪費します。成形機の温度も上げるわけだから。
それに、必要以上に成形機の温度が上がると摺動部の潤滑油の粘度が低下するので、すぐには出なくても長期に亘ると、思わぬ故障が起きたり機械的な寿命を縮めたりします。
タイバーやプラテンにとっても良くはありません。
成形工程も安定しなく...続きを読む

QPHP5で配列の初期宣言の書き方で失念しまして、エラーになります。

PHP5で配列の初期宣言の書き方で失念しまして、エラーになります。

$test = array(
[1, 2, 3],
[4, 5, 6]
);

Parse error: parse error, expecting `')'' in
という書き方はエラーになりますが、省略タイプ[]で
データを宣言する方法が知りたいです。

for ($i = 0; $i < count($test); $i++) {
print($test[$i][0] . " " . $test[$i][1] . " ". $test[$i][2]);
}


1 2 3
4 5 6
と表示させたいです。

Aベストアンサー

$test = array(
array(1,2,3),
array(4,5,6)
);
じゃダメなの?

Q床下の断熱材

床下の断熱材の下側は断熱材がむき出しのままになっていますが、落下防止のために合板を打ち付けて何か問題はありますか。それに上側の合板と下側の合板で断熱材をサンドイッチ状態にした方が熱効率が良さそうな気がするのですが。。。どなたか教えて下さい。

Aベストアンサー

>落下防止のために合板を打ち付けて何か問題はありますか。

合板は湿度に弱い材です。塗装をしなければ10年ぐらいで腐る可能性が大です。
したがって、長期にわたって床下で落下防止機能を期待するなら、金網がナイロンのネット(=漁網の様な)をお勧めします。



>それに上側の合板と下側の合板で断熱材をサンドイッチ状態にした方が熱効率が良さそうな気がするのですが。。。どなたか教えて下さい。

合板は余り断熱性能が高くありませんので効果はあまり期待できないと思います。
断熱効果を向上させたれば断熱材を増量するのがお勧めです。

Q日付の扱いに関して

現在、勤怠記録システムを趣味で作成しています。現在の仕様だと0時をまたぐ勤務の場合に対応できません。
出社9時、退社23時なら計算が可能ですが、退社0時となると計算できなくなりますし、0時に変わった際、新しい日付のデータを挿入する必要がある為、過去の日付となってしあう為、扱いが難しいためです。

何かいい方法教えてください。

Aベストアンサー

一番単純なのは日付までいれておくことです
日時形式ならひきざんでマイナスになることはありません

そうでなければ出社より退社が早い場合は退社時間に24時間たすとか
考えられますが、24時間以上の勤務の場合は問題がでます


人気Q&Aランキング