PHPオブジェクトの並び替え方法

このQ&Aのポイント
  • PHPのオブジェクトの並び替え方法について教えてください。
  • [ss_category]のデータの並び替え方法を教えてください。
  • [2]のデータを一番上にする方法を教えてください。
回答を見る
  • ベストアンサー

★PHP★オブジェクトの並び替えを教えてください

下記の[ss_category] の並びはそのままで、 [item] [0][1][2]のデータの並び替えの方法を教えてください。 ([2]のデータを一番上にしたいということです。) ご存知の方がおりましたらよろしくお願いします。 SimpleXMLElement Object ( [id] => 0.228142001317192226 [name] => aaa [ss_category] => Array ( [0] => SimpleXMLElement Object ( [id] => 0.697361001317192236 [name] => aaawww [description] => SimpleXMLElement Object ( ) [item] => Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => [name] => ええ ) [id] => 0.192165001317265048 [name] => ええ1 [description] => ええ1 [applyer] => ええ1 [ask_to] => SimpleXMLElement Object ( ) [upd_time] => 1317281103 [time_stamp] => 1317222000 [attach_file] => 0.192165001317265048 [attach_filename] => sql.txt ) [1] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => [name] => あああ ) [id] => 0.123983001317265270 [name] => あああ1 [description] => ああ1 [applyer] => ああ1 [ask_to] => SimpleXMLElement Object ( ) [upd_time] => 1317265632 [time_stamp] => 1317222000 [attach_file] => 0.123983001317265270 [attach_filename] => idm780.zip ) [2] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => [name] => www ) [id] => 0.955786001317265700 [name] => www [description] => www [applyer] => www [ask_to] => SimpleXMLElement Object ( ) [upd_time] => 1317265700 [time_stamp] => 1317222000 [attach_file] => 0.955786001317265700 [attach_filename] => idm780.zip ) ) ) [1] => SimpleXMLElement Object ( [id] => 0.706559001317265020 [name] => ああ [description] => ああ ) ) )

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

usort()あたりでできそうですが

参考URL:
http://www.php.net/manual/ja/function.usort.php
a-----n
質問者

お礼

ご連絡ありがとうございます。 URLを参考にさせていただきます。 ありがとうございました。

関連するQ&A

  • PHP5でのXMLパーサーについて

    PHP5で $xml = simplexml_load_file($url)を使って ヤフーオークションAPIから帰ってきたデータを処理したいのですが、 titleは {$xml->item[0]->title}で取得できることがわかったのですが、 totalAuctionsなど@attributesの中のデータを取得することができません。 どのようにすればよいかご教授願います。 よろしくお願いします。 SimpleXMLElement Object (  [@attributes] => Array  (   [totalAuctions] => 3677   [totalPage] => 74   [curPage] => 1  )  [item] => Array  (   [0] => SimpleXMLElement Object   (    [auctionID] => *****    [title] => ******    [seller] => SimpleXMLElement Object     (      [id] => ***      [itemlist] =>http://api.auctions.yahoo.co.jp/AuctionWebService/V1/SellingList?sellerID=***      [rating] =>ttp://rating2.auctions.yahoo.co.jp/jp/show/rating?userID=***     )      [url] => http://********************************      [img]=>http://**********************************.jpg      [price] => **,000 円      [bids] => **      [endtime] => *月 **日 **時 **分      [reserved] => SimpleXMLElement Object       (       )      [option] => SimpleXMLElement Object      (       [0] =>      )     )   ) )

    • ベストアンサー
    • PHP
  • 配列のデータ抽出

    phpでgoogleニュースをxmlから抽出しようとしているのですが、 /*配列の中身↓*/ [entry] => Array ( [0] => SimpleXMLElement Object ( [title] => googleのニュースです ( [@attributes] => Array ( [href] => http://googlerss.com ) ) と、いつも使っているsimplexml_load_file関数から配列にいれて foreach ($xml->entry->@attributes as $item) { とした所、[@attributes]の@マークでエラーが出てしまいます。 このような場合、どのようにすれば、配列から情報をとれるのでしょうか。 宜しくお願いします。

    • 締切済み
    • PHP
  • 配列の値

    $callback = $wp_registered_widgets[$id]['callback']; 配列 $callbackを展開すると以下のようになります。 Array ( [0] => WP_Widget_Pages Object ( [id_base] => pages [name] => 固定ページ [widget_options] => Array ( [classname] => widget_pages [description] => サイト内の固定ページ ) [control_options] => Array ( [id_base] => pages ) [number] => 3 [id] => pages-3 [updated] => [option_name] => widget_pages ) [1] => display_callback ) ここで、[name]の値だけ引き出したいですが・・・うまくいきません。 $callback[0]['name']; どうかご教授よろしくお願いいたします。

    • 締切済み
    • PHP
  • php rss取得方法

    こんにちは、rss取得方法を勉強中なのですが 下記phpでrssを取得しているのですが、$xml->entry[$i]['item']->titleなどで うまく表示されません。(外部phpからxoopsのpicoというモジュールのrssを取得しようとしています。) phpコード $rssurl = "url"; $xml = simplexml_load_file($rssurl); $num_of_data = 4; $outdata = ""; for ($i=0; $i<$num_of_data; $i++){ $outdata .= "<li>"; $outdata .= "<a href=\""; $outdata .= $xml->entry[$i]->link[href]; $outdata .= "\">"; $outdata .= $xml->entry[$i]['item']->title; $outdata .= "</a><br />\n"; $outdata .= "</li>"; } xmlの中身 SimpleXMLElement Object ( [@attributes] => Array ( [version] => 2.0 ) [channel] => SimpleXMLElement Object ( [title] => XOOPS Cube Site - pico [link] => http://localhost/xoops/modules/pico/ [description] => SimpleXMLElement Object ( ) [lastBuildDate] => Thu, 13 Dec 2012 02:52:29 +0100 [docs] => http://backend.userland.com/rss/ [generator] => XOOPS - pico [category] => TOP [webMaster] => admin@hotmail.co.jp [language] => ja [item] => Array ( [0] => SimpleXMLElement Object ( [title] => コンテンツ1 [link] => http://localhost/xoops/modules/pico/index.php/index.html [description] => 正式名称:NARUTO -ナルト概要:体内に九尾の妖狐を封印された落ちこぼれ忍者・うずまきナルトが、里一番の忍である火影を目指し、数々の試練を乗り越え成長していく物語。仲間との友... [guid] => http://localhost/xoops/modules/pico/index.php/index.html [pubDate] => Thu, 13 Dec 2012 02:52:29 +0100 [category] => アニメタイトル ) [1] => SimpleXMLElement Object ( [title] => ee [link] => http://localhost/xoops/modules/pico/index.php/content0003.html [description] => e [guid] => http://localhost/xoops/modules/pico/index.php/content0003.html [pubDate] => Thu, 13 Dec 2012 02:03:51 +0100 [category] => アニメタイトル ) [2] => SimpleXMLElement Object ( [title] => コンテンツ6 [link] => http://localhost/xoops/modules/pico/index.php/content0002.html [description] => コンテンツ2 [guid] => http://localhost/xoops/modules/pico/index.php/content0002.html [pubDate] => Thu, 13 Dec 2012 01:53:17 +0100 [category] => アニメタイトル ) ) ) )

    • 締切済み
    • PHP
  • WSHにて戻りオブジェクトのプロパティ全取得方法

    http://gallery.technet.microsoft.com/scriptcenter/07a8a60d-fef5-4729-87fe-3c7cee10267e を参考に、ローカルのユーザー情報を抜こうと思っております。 <内容> strComputer = "atl-fs-01" Set colAccounts = GetObject("WinNT://" & strComputer & "") colAccounts.Filter = Array("user") For Each objUser In colAccounts Wscript.Echo objUser.Name Wscript.Echo objUser.FullName Wscript.Echo Description Wscript 実行すると正しく動きました。 1. GetObjectで対象のコンピューターからのオブジェクトを生成 2.フィルターにより、ユーザー情報のみ抽出? 3. objUser.Name、 objUser.FullName objUser.Description を表示という内容までは理解できるのですが、 このobjUserに「FullName」と「Description」以外のプロパティを知りたいのです。 どうにかして、「objUser」が所持する「FullName」と「Description」以外のプロパティ一覧を全表示させることは出来ないでしょうか? ご教授お願いします。

  • JSON多次元オブジェクト(?)を配列へ変換したい

    ・下記のようなJSON多次元オブジェクト(?)を配列へ変換したいのですが、どうすれば良いでしょうか? ・json_decode試したけどうまくいきませんでした ・出来れば、data以下だけを配列で取得したいです array(1) { [0]=> string(1284) {"version":1,"req_id":null,"error":null,"data":[ {"name":"Sad","j_title":"A","id":"23","thumb":"hoge1","date":"2009","title":"Ch","url":"hoge2"}, {"name":"Wil","j_title":"r","id":"30","thumb":"hoge3","date":"2013","title":"Po","url":"hoge8"} ]} [1]=> string(1282) {"version":1,"……

    • ベストアンサー
    • PHP
  • レスポンスから値を取得したい

    PHPであるWebサービスにリクエストしたら以下のようなレスポンスが返ってきました。 var_exportとvar_dumpで出力した例は以下のとおりですが、この中から要素idの値(test1234)を取得するにはどのようにしたら良いのでしょうか? ■var_exportで出力した場合  API\Data\Response::__set_state(array('attributes' => array ('id' => 'test1234', …))) ■var_dumpで出力した場合  object(API\Data\Response)[20]   protected 'attributes' =>    array (size=9)     'id' => string 'test1234' (length=8)     … ※「API\Data\Response」の\は実際にはバックスラッシュです。 どうぞよろしくお願い致します。

    • ベストアンサー
    • PHP
  • 配列操作について

    お世話になります。 $obj = array(1 array(id=>111 name=>aaa date=yyyymmdd array(2 array(id=>222 name=>bbb date=yyyymmdd 上記のようなオブジェクト($obj)があるとして この最下層の連想配列データ(id,name,date)を 配列にしたい時は、以下のような書き方で取れると 思いますが、もっとすっきりさせる書き方などありますか? $a = array(); $c = count($obj); for($i=0; $i<$c; $i++){ $a = $obj[$i]['id']; $a = $obj[$i]['name']; $a = $obj[$i]['date']; $i++}

    • ベストアンサー
    • PHP
  • PHP MySQLでエラーがでてしまいます。

    PHP MySQLからデータを取得したいのですが、以下のエラーが出てしまい原因が分かりません。 詳しい方お願い致します。 <b>Warning</b>: json_encode() expects exactly 1 parameter, 2 given in <b>/home/users/2/***.**-********/web/****************/php/seupPharmacyData.php</b> on line <b>21</b><br /> エラーが出るコードは以下になります。 <?php include "db.php"; $sql = "SELECT * FROM user_data"; $query = mysql_query($sql, $db) or die("クエリの送信に失敗しました。<br />SQL:".$sql); $result= array(); while ($row = mysql_fetch_object($query)) { $result[] = array( 'name1' => $row->name1, 'name2' => $row->name2, 'name3' => $row->name3, 'id' => $row->id, ); } //jsonとして出力 header('Content-type:application/json; charset=UTF-8'); echo json_encode($result,JSON_UNESCAPED_UNICODE); ?>

    • ベストアンサー
    • PHP
  • mysql_fetch_objectの書き方を教えて下さい。

    PHP5.1.6を使用しています。 次のスクリプトを書きましたが、データが取得できません。 $conn_id = mysql_connect("localhost","***","***") or die('Error connecting to MySQL'); mysql_select_db('***',$conn_id); $query ="SELECT abcd,efgh from XYZ where name='taro'"; $result = mysql_query($query,$conn_id) or die($query.'failed('.mysql_error().')'); $ydata = array(); $xdata = array(); while($row = mysql_fetch_array($result)){  ← 11行目 array_push($ydata, $row->efgh);   ← 12行目 array_push($xdata, $row->abcd);   ← 13行目 } エラーログを見ると、 PHP Notice: Trying to get property of non-object in /***/***/****.php on line 12 PHP Notice: Trying to get property of non-object in /***/***/****.php on line 13 となっています。 var_dump($row) 句を入れ、ブラウザから見ると、当然ながら(?)bool(false) と表示されます。 11行目の mysql_fetch_array を mysql_fetch_object に入れ換えて while($row = mysql_fetch_object($result)){ としても結果は変わりません。 リファレンスマニュアルやサンプルを参照して種々手直ししましたが、今ひとつ正解に辿り着けません。 データを取得して配列に入れるには、どのように修正すれば良いか、教えて頂けませんでしょうか。

    • ベストアンサー
    • PHP