2016-12-16 5 views
1

Aerospikeにいくつかのデータを入れました。問題なくAQLまたはC#ドライバをクエリできます。しかし、私はそれをPHPのドライバを介して試してみると、私は完全なレコードが返されることはありません。私はscan()メソッド中にこの問題を観察した後、get()メソッドで同じ結果を試した。AerospikeドライバのPHP get()とscan()メソッドがフルレコードを返さない

$config = ["hosts" => [["addr" => "192.168.x.x", "port" => 3000]]]; 
$db = new Aerospike($config); 
if (!$db->isConnected()) 
{ 
    echo "Failed to connect to the Aerospike server [{$db->errorno()}]: {$db->error()}\n"; 
    exit(1); 
} 

$key = $db->initKey("company", "Company", 2456223); 
$status = $db->get($key, $record); 
echo "key->".$key['key']."\r\n"; 
print_r($record['bins']['address']); 

出力は以下の通りである:

key->2456223 
Array 
(
    [zip] => 12345 
    [locality] => mytown 
) 

とAQL出力:

aql> select address from company.Company where pk=2456223 
[ 
    { 
    "address": { 
     "zip": "12345", 
     "locality": "mytown", 
     "hidden": "00 01 00 00 00 FF FF FF FF 01 00 00 00 00 00 00 00 04 01 00 00 00 0E 53 79 73 74 65 6D 2E 42 6F 6F 6C 65 61 6E 01 00 00 00 07 6D 5F 76 61 6C 75 65 00 01 00 0B", 
     "geoID": 1234, 
     "streetAddress": "mystreet 4", 
     "region": "here", 
     "streetId": 5678 
    } 
    } 
] 

任意のアイデアここで

は、get()メソッドを使用してコードの一部であり、私は何を間違えているのですか?

+1

読み込みしようとしているビンのデータ型は何ですか?地図 ? – sunil

+0

したがって、ビンは「アドレス」であり、そのタイプは「マップ」です。 – mitereiter

+0

より具体的には、zip-> string、locality-> string、hidden-> blob(元々ブール型のC#コードでインポートされた)、geoID-> integer、streetAddress-> string、region-> string、streetID - >整数 – mitereiter

答えて

1

phpがC#BLOB型を扱う際に問題があるようです。マップの解析/印刷が途中で中止するように見えます。ブロブはC#で書かれているので、それをうまく処理できるようです。しかしPHPには問題があるようです。

関連する問題