X



【PHP】下らねぇ質問はここに書き込みやがれ 11
レス数が1000を超えています。これ以上書き込みはできません。
0952デフォルトの名無しさん (ワッチョイ d76e-pvza)
垢版 |
2021/04/19(月) 21:57:20.65ID:hskk6RGP0
simplexml elementを整形して表示するにはどうしたらいいのでしょうか?

$rss = simplexml_load_file("http://jin115.com/index.rdf";);
"<pre><code>" .htmlspecialchars(print_r($rss)). "<code><pre>";
こんな感じにしましたが、駄目でした。
htmlspecialcharsを使うということは覚えていました。
しかし、記事が見つかりません。
0953蟻人間 ◆T6xkBnTXz7B0 (スフッ Sdbf-mAIT)
垢版 |
2021/04/19(月) 22:29:28.15ID:25OEXc79d
html書いたことないんだろ?
終了タグって知ってる?
閉じないといけないタグがあるんだよ。
タグを出力するんならechoを使ったら?
式を記述しただけだと出力しないよ。
0955デフォルトの名無しさん (ワッチョイ 9f02-IHcq)
垢版 |
2021/04/20(火) 01:37:34.53ID:trDUwP4k0
>>951
>getdocnamespacesの処理が必要なのはなぜでしょうか?
XMLが名前空間使うからだよ
XML扱う関数使ってるからだよ

channelのitems(SimpleXmlElement)得るのにchildrenにns渡すのわかったなら、itemの方のvar_dumpしてプロパティとして取れそうにないやつ(SimpleXmlElement)にそれをするだけだろ?
0956デフォルトの名無しさん (ワッチョイ 9f02-IHcq)
垢版 |
2021/04/20(火) 01:40:25.04ID:trDUwP4k0
>>951
$rss = simplexml_load_file("http://jin115.com/index.rdf";);
$ns = $rss->getDocNamespaces();

$result = [];
foreach ($rss->item as $item) {
$result[] = [
'about'=> (string) $item->attributes($ns['rdf'])->about,
'title' => (string) $item->title,
'link' => (string) $item->link,
'description' => (array) $item->children($ns['dc']),
'content' => (string) $item->children($ns['content'])->encoded,
];
}

echo '<pre>';
var_dump($result);
0957デフォルトの名無しさん (オイコラミネオ MM6b-yXaZ)
垢版 |
2021/04/20(火) 21:10:47.97ID:oTG9VRsIM
>>956以外マウンティングおじさんワラワラでワロタ
0958デフォルトの名無しさん (ワッチョイ ff63-HbE1)
垢版 |
2021/04/20(火) 23:10:24.15ID:yQXNiiU60
DB::biginTransacrion

try{
 msg=success;
}catch{
msg=fail;
DB::rollback
}

みたいな感じで変数に文字列を持たせたいのですが、
トランザクション内の変数値は、あくまで一時的なものでロールバックしたら
消えてしまうとのこと 事実うまく保持できてませんでした

うまい方法はないでしょうか??
0959886 (ワッチョイ 972c-KAGY)
垢版 |
2021/04/21(水) 12:51:30.92ID:P7LSpcTG0
>>909
に、Ruby で書いたけど、

Rubyみたいに、RSS 用のライブラリは無いの?
直に、XML でパースするしかないの?

require 'rss'

text = File.read "index.rdf" # RSS 1
feed = RSS::Parser.parse( text )
0960955 (ワッチョイ 9f02-IHcq)
垢版 |
2021/04/21(水) 17:39:32.43ID:DvIuWtgg0
>>959
質問の起点となる書き込みが simplexml_load_file でrssを取得してからのタイトル表示方法についてだから、質問者の意向を汲んでそのやり方を踏襲してんだよ
それでもわからないとか、他に方法は?って聞かれれば、ライブラリを勧めるよ

至極当たり前のことだろ?
0962デフォルトの名無しさん (ワッチョイ d76e-vWSz)
垢版 |
2021/04/21(水) 20:10:57.40ID:R2opRJR00
>>954
これだと改行なしになっちゃうんですよ。(´・ω・`)

>>955
名前空間の意味やっと理解出来ました
"name":{}
↑こんな感じのやつですよね

ただの、括りみたいなもんですよね。
0963デフォルトの名無しさん (ワッチョイ d76e-vWSz)
垢版 |
2021/04/21(水) 20:59:01.97ID:R2opRJR00
>>956
全部取り出さないと駄目なんすね
0964デフォルトの名無しさん (ワッチョイ d76e-vWSz)
垢版 |
2021/04/21(水) 22:18:48.90ID:R2opRJR00
>>955
取得したrssにgetdocnamespaceしたらこれが取れました
Array ( [rdf] => http://www.w3.org/1999/02/22-rdf-syntax-ns# [] => http://purl.org/rss/1.0/ [content] => http://purl.org/rss/1.0/modules/content/ [taxo] => http://purl.org/rss/1.0/modules/taxonomy/ [dc] => http://purl.org/dc/elements/1.1/ [syn] => http://purl.org/rss/1.0/modules/syndication/ [admin] => http://webns.net/mvcb/ [atom] => http://www.w3.org/2005/Atom )

これに何の意味があるのかまだ分からないのですが、これが名前空間というやつですか?
何のための処理かわからない
0965955 (ワッチョイ 9f02-IHcq)
垢版 |
2021/04/21(水) 23:20:38.26ID:DvIuWtgg0
>何のための処理かわからない
わからなければvar_dumpするよな?
するとSimpleXmlElementが返ってくるよな?
PHPマニュアルページ行くよな?
childrenで取れそうだよな?
引数が名前空間だよな?
んじゃ名前空間取ってこよう

以上が答え
0967デフォルトの名無しさん (ワッチョイ d76e-vWSz)
垢版 |
2021/04/22(木) 12:56:15.48ID:XvsGXOnj0
>>965
参考サイト教えてもらえますか?
xmlとrdfの違いがまずよくわからないのですが、かなり似たもののようです。
xmlは文法で、rdfは書式?

その違いを是正するためにgetdocnamespaceを使うということですか?
0970デフォルトの名無しさん (ワッチョイ e16e-T6Cp)
垢版 |
2021/04/23(金) 05:46:15.51ID:w6BeQgvS0
>>969
あっ、回答いらないです。
0971デフォルトの名無しさん (ワッチョイ e16e-T6Cp)
垢版 |
2021/04/23(金) 07:23:02.48ID:w6BeQgvS0
>>969
すみません、言い過ぎました。
0973デフォルトの名無しさん (ワッチョイ 3802-Xf+i)
垢版 |
2021/04/28(水) 19:40:30.92ID:Pq0hnOng0
RSSについて調べる場合どのサイト なんの書籍からエラー解決すればいいんでしょうか?
イラストはパースや骨から勉強できるんですが 具体的な方法がわかりません。
0974デフォルトの名無しさん (ワッチョイ 3802-Xf+i)
垢版 |
2021/04/28(水) 19:40:30.96ID:Pq0hnOng0
RSSについて調べる場合どのサイト なんの書籍からエラー解決すればいいんでしょうか?
イラストはパースや骨から勉強できるんですが 具体的な方法がわかりません。
0975デフォルトの名無しさん (ワッチョイ 3802-Xf+i)
垢版 |
2021/04/28(水) 19:40:30.96ID:Pq0hnOng0
RSSについて調べる場合どのサイト なんの書籍からエラー解決すればいいんでしょうか?
イラストはパースや骨から勉強できるんですが 具体的な方法がわかりません。
0977デフォルトの名無しさん (ワッチョイ 3802-Xf+i)
垢版 |
2021/04/29(木) 00:29:45.83ID:6gRyO9Yf0
別の方です。RSSについて勉強したいんですが、なにかおすすめの書籍やサイトはありますでしょうか?
エラー見て環境で試す方法をしたんですが、解決しなかったので。
0979886 (ワッチョイ 972c-uCoU)
垢版 |
2021/04/29(木) 05:47:02.20ID:RErNGDPY0
>>886
>>901
に書いた

RSS には、RSS 1/2, ATOM の3つあるので、誰かが作った、RSSのライブラリを使う。
この3つを同じ扱い方で、書けるようなモジュールもあるかも知れない

形式はXML だけど、XMLのまま扱う人は、いない

そういう事をすると、3つの形式を自分で調べないといけなくなるから、
誰かが作った、RSSのライブラリを使う

プログラミングとは作るものじゃなくて、誰かが作ったライブラリを探すもの。
これがプログラミングの教育体制

皆が初心者へRuby を勧めるのは、この教育体制が優れているから。
Ruby on Rails の本・ウェブサイトなど、
優れた情報が多く、教育体制が充実しているから

他の言語では、そうはいかない。
探せない
0982デフォルトの名無しさん (ワッチョイ 3802-rqav)
垢版 |
2021/04/29(木) 11:08:40.87ID:6gRyO9Yf0
>>979
それはわかりますよ、エラーを調べて実行 それでコードを書き直すその繰り返しですよね。
やはり参考の書籍とかそういう問題ではないのでしょうか
0983886 (ワッチョイ 972c-uCoU)
垢版 |
2021/04/29(木) 12:11:16.73ID:RErNGDPY0
library rss
https://docs.ruby-lang.org/ja/latest/library/rss.html

例えば、Ruby なら、最初から標準装備されている。
Battery Included・電池付き言語

ここで、RSS には、RSS 1/2, ATOM の3つあるので、各々書き方が異なる。
これを統一的に書けるようにするには、
誰かが作った、RSSのライブラリを探す必要がある

良質なライブラリが多くあるかとか、
良質な本・ウェブサイト・日本語情報などが多いかとかで、使う言語が決まる

プログラミングとは自分で書けば書くほど、低品質で保守できなくなる。
高品質で保守しやすくするには、誰かが作った、良質なライブラリを探す必要がある

これを自走力と言う。
自分で問題を解決できる能力

Ruby on Rails の学校・サロンなどでは、こればっかり。
1にも2にも、自走力!

その自走力に適したものが、Ruby on Rails。
他の言語では、なかなか探せない
0984デフォルトの名無しさん (ワッチョイ a27c-On6t)
垢版 |
2021/04/29(木) 12:20:49.62ID:qKoV/Jqw0
rubyガイジは消えろよw
そういうのは標準にサポートしているとは言わないんだよカス
PHPでも調べたらいくらでもあるやろ
composerすら知らない奴には使えないというだけだw
0986デフォルトの名無しさん (ワッチョイ ba02-sVZV)
垢版 |
2021/04/29(木) 14:19:59.54ID:pVqi52Mf0
>>982
RSS1だろうが2だろうがATOMだろうが、xmlなのだからsimplexml_load_fileで取得できる
あとは返ってきたSimpleXMLElementをどうするか
それについては初学者が躓きやすい子ノードや属性値まで取得方法が示されている
これでダメならライブラリを使う(ライブラリの名前も示されてる)

以上より、RSS形式は不問なのだからRSSを勉強する必要は無く、且つSimpleXMLElementの扱いがわかったのであれば全て取得できるのだからエラーとなる要因も無い

つまりこれでエラーとは騒ぐのは本人のスキルの問題
0987886 (ワッチョイ 972c-uCoU)
垢版 |
2021/04/29(木) 15:38:57.82ID:RErNGDPY0
>>886
を見てみ

Ruby のRSS ライブラリでは、

複数entry の配列を、items でアクセス出来ている。
XML の構造など、気にせずにアクセスできる
0989デフォルトの名無しさん (アウアウウー Saab-rqav)
垢版 |
2021/04/29(木) 18:03:30.70ID:aq6V/zyCa
>>988
ライブラリはJava scriptやjQueryじゃないの?
PHPでライブラリは使えないでしょ
0990デフォルトの名無しさん (アウアウウー Saab-rqav)
垢版 |
2021/04/29(木) 18:05:35.00ID:aq6V/zyCa
自分の場合サイトによって画像が表示されたりされなかったりする為 困っている
タイトルや中身の一部は取得できてる為 何かしらの原因がわからない
0992デフォルトの名無しさん (ワッチョイ ba02-sVZV)
垢版 |
2021/04/29(木) 19:27:36.20ID:pVqi52Mf0
>>990
その表示されないサイトも表示されるサイトも全て、>>956 で処理してるということなのかな?
RSSは1だったり2だったりATOMだったりするんだから、>>956 で全てまかなえるわけではない
あくまでsimplexml_load_fileからのSimpleXMLElementの扱い方の一例

一部取得できてるとわかってるなら、残りの取得出来て無い部分をvar_dumpして調べて自分で処理を書く

それができないならライブラリを使う >>961
やり方は「php rss 取得 ライブラリ」でググればいくらでも見つかる
0994デフォルトの名無しさん (ワッチョイ 0708-mIzA)
垢版 |
2021/04/30(金) 11:54:52.34ID:6f1slJ3x0
>>989
PHPでライブラリが使えない?

んなわけあるかw
もうそれ、「ライブラリ」という単語の意味すら理解できてない
もう諦めた方がいいよ
そんなんじゃお前さん自身も含め誰も幸せにならない
0996デフォルトの名無しさん (ワッチョイ 0708-mIzA)
垢版 |
2021/04/30(金) 12:04:45.81ID:6f1slJ3x0
>>990
お前さんは基礎がガタガタなんだよ
基礎とすらも呼べない「基本的な言葉の意味」すら理解できない
ライブラリがどうとかそういう以前の話

あとRubyという単語を出してるやつを相手にするな
お前さんの理解力では混乱が増すだけだ
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 328日 21時間 44分 14秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況