私はこのライブラリを使用しています: https://sourceforge.net/p/wowaroryapi/home/Home/これにはドキュメントが大幅に不足しています。そこにあるフォーラムには、ほとんど回答がありません。
バトルネットの武器庫からデータ、特にギルド情報を引き出すことに成功しました。次に、 Dataという行の大きな BLOB としてwa_guildsテーブルに格納されます。そこから引っ張って表示する方法がわかりません。以下のコードとその約 100 の異なるバリエーションを試してみましたが、シリアル化を解除することもできましたが、経験が浅すぎます。これは私の知識レベルを超えています。
私のエラー:通知: 未定義のインデックス: オブジェクト の名前、レベル、ランクを試しました
print $roster->character;による新しいエラー。: "通知: 非オブジェクトのプロパティを取得しようとしています"
私のコード:
<?php
include('_inc.php'); // shh I'm hunting wabbits
$conn = mysqli_connect("localhost", "root", "")
or die(mysql_error());
mysqli_select_db($conn, "wow")
or die(mysql_error());
$data = mysqli_query($conn, "SELECT Data FROM wa_guilds") or die(mysql_error());
//echo $data;
print "<table border cellpadding=3>";
while($info = mysqli_fetch_array( $data, MYSQLI_BOTH ))
{
$roster = json_decode($info[0]);
print $roster->character;
}
print "</table>";
//$array = explode(',', $data);
//echo $array[0];
?>
人気のあるライブラリのように見えるので、誰かが経験したことを願っています。
var_dump からのいくつかのデータ:
array(2) { [0]=> string(100000) "{"lastModified":1367433943000,"name":"Teh Fail","realm":"Zul'jin","battlegroup":"Ruin"," level":25,"side":1,"achievementPoints":1195, [{"character":{"name":"Mundi","realm":"Zul'jin","battlegroup":"Ruin", "class":8,"race":8,"gender":0,"level":85,"achievementPoints":12855,"thumbnail":"zuljin/65/3357249-avatar.jpg","guild": "Teh Fail","spec":{"name":"Fire","role":"DPS","backgroundImage":"bg-mage-fire","icon":"spell_fire_firebolt02","説明":"火の玉と燃え盛る炎で敵に火をつける。","order":1}},"rank":3},{"character":{"name":"Kekeke","realm":"Zul' jin","battlegroup":"Ruin","class":4,"race":8,"gender":0,"level":85,"achievementPoints":11345,"thumbnail":"zuljin/76/ 3359564-avatar.jpg","guild":"失敗","spec":{"name":"Combat","role":"DPS","backgroundImage":"bg-rogue-combat"," icon":"ability_backstab","description":"敏捷性と狡猾さを駆使して敵と対峙するスワッシュバックラー","order":1}},"rank":3},{"character" :{"name":"Benth","realm":"Zul'jin","battlegroup":"Ruin","class":9,"race":5,"gender":0,"level":90," achievementPoints":13165,"thumbnail":"zuljin/252/3364348-avatar.jpg","guild":"Teh Fail","spec":{"name":"Destruction","role":"DPS" ,"backgroundImage":"bg-warlock-destruction","icon":"spell_shadow_rainoffire","description":"炎を呼び出して敵を焼き尽くし破壊するカオスの達人.","order":2}}, "ランク":3}"level":90,"achievementPoints":13165,"thumbnail":"zuljin/252/3364348-avatar.jpg","guild":"失敗","spec":{"name":"破壊", "role":"DPS","backgroundImage":"bg-warlock-destruction","icon":"spell_shadow_rainoffire","description":"炎を呼び出して敵を焼き尽くし破壊するカオスの達人.","オーダー":2}},"ランク":3}"level":90,"achievementPoints":13165,"thumbnail":"zuljin/252/3364348-avatar.jpg","guild":"失敗","spec":{"name":"破壊", "role":"DPS","backgroundImage":"bg-warlock-destruction","icon":"spell_shadow_rainoffire","description":"炎を呼び出して敵を焼き尽くし破壊するカオスの達人.","オーダー":2}},"ランク":3}spell_shadow_rainoffire","description":"炎を呼び出して敵を燃やし、破壊するカオスの達人。","order":2}},"rank":3}spell_shadow_rainoffire","description":"炎を呼び出して敵を燃やし、破壊するカオスの達人。","order":2}},"rank":3}
編集: mysqli データベース接続ラインを PDO に変更し、すべて問題ありません。