A note, response from xmlrpc_decode is not always an array. Whenever the XMLRPC server returns a string, xmlrpc_is_fault will complain about not being an array.
Best way to detect errors is
<?php
$response = xmlrpc_decode($file);
if (is_array($response) && xmlrpc_is_fault($response)) {
throw new Exception($response['faultString'], $response['faultCode']);
}
?>
xmlrpc_is_fault
(PHP 4 >= 4.3.0, PHP 5)
xmlrpc_is_fault — 配列の値が XMLRPC の失敗であるかどうかを調べる
説明
bool xmlrpc_is_fault
( array
$arg
)警告
この関数は、 実験的 なものです。この関数の動作・ 名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 この関数は自己責任で使用してください。
返り値
引数が失敗を表す場合に TRUE、それ以外の場合に FALSE を返します。
失敗の内容は $arg["faultString"]、失敗のコードは
$arg["faultCode"] に格納されます。
例
xmlrpc_encode_request() の例を参照ください。
angelo at at dot com
25-Jan-2011 12:31
