ここに私が名前とURLを掻き集めるのに使ったコードがありますが、すべての名前は~
で始まります。 ~
部分を削除します。私はstr_replace
を使ってみましたが、それを見るのは正しいとは思われません。サイトから削り取った平文の中のどの部分を削除しますか?
name url
~john www.john.com
~bob www.bob.com
~rob www.rob.com
ここに私が名前とURLを掻き集めるのに使ったコードがありますが、すべての名前は~
で始まります。 ~
部分を削除します。私はstr_replace
を使ってみましたが、それを見るのは正しいとは思われません。サイトから削り取った平文の中のどの部分を削除しますか?
name url
~john www.john.com
~bob www.bob.com
~rob www.rob.com
<?php
$str = "~~~~~~";
$str = str_replace("~","!",$str);
echo $str;
?>
私の作品:
foreach ($div_category as &$div){
$a_list = $div->find("a");
foreach ($a_list as &$anchor){
//put the data into an array and then write array out to a csv file.
$csv_array=array($anchor->plaintext, $anchor->getAttribute("href"));
$anchor = str_replace('~', ' ', $anchor);
fputcsv($csv_out, $csv_array);
現在の結果例(もそれと同じ結果をテストしました)。交換部分は上手くいくはずです。アンカーの属性に「間違って」対処している必要があります。でアンカーを印刷してみてください:あなたが使用する必要がある属性のものを見るために
print_r($anchor)
EDIT:
foreach ($div_category as &$div){
$a_list = $div->find("a");
foreach ($a_list as &$anchor){
//put the data into an array and then write array out to a csv file.
-> $csv_array=array($anchor->plaintext, $anchor->getAttribute("href")); // line X
-> $anchor = str_replace('~', ' ', $anchor); // line Y
fputcsv($csv_out, $csv_array);
問題はXのオーダーであり、Yラインがマーク矢印で。それらを切り替えて、それが動作するはずです。
EDIT2:
と
$anchor = str_replace('~', ' ', $anchor);
は、私はこれらの質問を憎む
$anchor->plaintext = str_replace('~', '', $anchor->plaintext);
私はprint_r($ anchor)関数の終わりには名前のリストしか表示せず、クリック可能です(それに添付されたURLです)が、シンボルはありません。しかし、私は置く!あなたが示唆したように、それはプリントで!ジョンを示すでしょう。だから私は右にそれらを印刷するようだが、CSVファイルでそれはまだ〜記号を表示しています。 – merrill
OK答えを編集してみると – abcde123483
私は実際にそれらを早めに切り替えて、エラーが出る 致命的なエラー:メンバー関数getAttribute()を非オブジェクト上で呼び出す 行のX部分 – merrill
でなければなりません。私は自分自身のウェブマスターであり、私は自分のものを何も創造することができない人を憎むが、私の労働の果実を "掻き取る"ことしかできない。そして、私も彼らを助けるはずです! –