![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_05.png?e8efa67)
<?php
require_once 'rss_fetch.inc';
require_once 'code_table.ucs2jis';
require_once 'jcode.php';
$url = 'xmlアドレス';
$rss = fetch_rss($url);
$title = $rss->channel['title'];
//JcodeConvert($str, $from, $to)
//0:PASS(無変換)1:EUC-JP 2:Shift_JIS 3:ISO-2022-JP(JIS) 4:UTF-8
$title = JcodeConvert($title, 4, 4);
foreach ($rss->items as $item ) {
$title = $item[title];
$title = JcodeConvert($title, 4, 4);
$url = $item[link];
$description = $item[description];
$description = mb_convert_encoding($description, "Shift_JIS", "auto");
$description = mb_strimwidth($description, 0, 120, "" , "Shift_JIS");
echo "<li><a href=\"$url\">$title</a><br>$description</li>\n";
}
?>
と記述し、
<ul>
<!--#include virtual="上記phpファイルのアドレス" -->
</ul>
でサイトにRSSを表示しているのですが、
通常上が新しいものが表示されているのですが、
これをランダムに表示したいと考えています、
shuffleを使えばできるような感じですが、記述方法が全く分かりません。
何を記述すれば、ランダム表示されますか。
No.4ベストアンサー
- 回答日時:
<ul></ul>の間にインクルードしたいならばこんな感じでどうでしょうか。
http://pastebin.com/2RJjcPV4
SSIって最近使われているんですかね・・・?
恥ずかしながらSSI自体の存在を今まで知らなかったのですが、
正直わざわざこれを今採用するメリットは皆無に思えます。
http://detail.chiebukuro.yahoo.co.jp/qa/question …
素直に読み込み元のファイルについて
「*.shtml」
↓
「*.php」
「<!--#include virtual="上記phpファイルのアドレス" -->」
↓
「<?php require('上記phpファイルへの相対パス'); ?>」
でいいんじゃないですかね。
読み込みもとのファイルはShift_JISで書かれていると思いますが、
この際全部UTF-8に変えちゃいましょう。
Shift_JISなんて今の時代デメリットばかりでメリット皆無です。
Windowsの「メモ帳」を使っているならば支障がありますが、
メモ帳を使うこと自体がナンセンスです。
世界の流れもご覧ください↓
http://news.mynavi.jp/news/2012/02/09/027/
最初の例を含め、参考にされている情報が非常に古いようなので、
賞味期限が切れていないんか確認するようにしましょう。
No.2
- 回答日時:
すいません肝心のシャッフル忘れてました(汗
$articlesに格納していくforeachを抜けた直後に shuffle($articles); と書いてください。
No.1
- 回答日時:
参考にされているサイトはこちらでしょうか・・・?
http://www.hyuki.com/yukiwiki/wiki.cgi?MagpieRSS
このサイトの情報はとても古いので参考にしないでください。
【このコードの問題点】
・現在はMagpieRSSを使わなくてもPHPに標準実装されている
SimpleXML関数を使えばこの目的は実現できる。
・現在はShift_JISが使われることは稀で、
UTF-8でページを作成することがほとんどである。
jcode.phpを通う必要性も無い。
・$item[title] ではなく $item['title'] としないと、E_NOTICEが発生する。
サンプル
http://pastebin.com/xLZNjGJ9
この回答への補足
早速、回答有難うございます。
記述方法で質問です。
【PHP外部ファイルの中身】
<?php
$url = 'xmlのURL';
$xml = @simplexml_load_file($url);
$articles = array();
if ($xml) {
$title = (string)$xml->channel->title;
foreach ($xml->channel->item as $item) {
$articles[] = array(
'url' => (string)$item->url,
'title' => (string)$item->title,
'description' => mb_strimwidth(
(string)$item->description,
0,
120,
'...',
'UTF-8'
),
);
}
} else {
$title = '取得失敗';
}
header('Content-Type: text/html; charset=utf-8');
?>
と記述すると、
これを読みだすための本文に記述する文字は何でしょうか。
<ul>
<!--#include virtual="../magpie/other_rss.php" -->
</ul>
のような文は何でしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
a href リンクタグでだけで 送...
-
PHPで画像の渡しが上手く行きま...
-
PHP8を使うと、大量のWarningが...
-
phpでcookieがうまく保存されない
-
PHPで今日の日付から3日後を表...
-
phpの imap_search で漢字コード
-
ファイルアップロードに関して...
-
PHPSpreadsheetを使って関数を...
-
1 OR 1=1 は どんな論理(約束事...
-
PHPについて。
-
phpのheader("Location:#pos")...
-
PHPからCSVをアップロード後、m...
-
[php初心者]サイトを見てデータ...
-
phpに関わる所での、form actio...
-
ゆゆにゃ。
-
【初心者】XAMPPのapacheの(恐...
-
プログラミング言語で、使える...
-
こちらはただの直列処理ですか?
-
PHPでこのコード自体に意味は無...
-
PHPとHTML+Xamppの掲示板で画像...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WordPressのLighting(テーマ)に...
-
PHPのソース変更が反映されない
-
wordpress投稿内でcgiを動かしたい
-
phpの表示領域をしていしたい!
-
MagpieRSSでRSSを取得し、ラン...
-
phpで検索結果を画像表示させる...
-
PHP+smartyで文字化け
-
【大至急】.phpファイルがブラ...
-
ワードプレスの記事をHTML...
-
曜日毎に読み込むphpを変更...
-
アップロードファイルの数に応...
-
ランキングを表示する際の画像...
-
Webデザイナー向けLinuxユーザ...
-
wordpressのテーマカスタマイズ...
-
変数で日付を指定し、新しい順...
-
wordpressサイトの、任意の場所...
-
外部ファイルの読み込み
-
サーバーの設定方法
-
やっぱりちょっと気になる相手...
-
ワードプレス。lightning ペー...
おすすめ情報