2

PHP および TinCanPHP API を介して、Learning Locker に保存されているステートメントに対してクエリを実行しようとしています。この回答で、Learning Locker からの応答を取得できました。応答の一部を次に示します。

TinCan\LRSResponse Object
(
    [success] => 1
    [content] => TinCan\StatementsResult Object
        (
            [statements:protected] => Array
                (
                    [0] => TinCan\Statement Object
                        (
                            [id:protected] => 9ea9e6b6-8278-4545-a02c-c46113f3ba30
                            [stored:protected] => 2016-02-28T12:04:01.670600+00:00
                            [authority:protected] => TinCan\Agent Object
                                (
                                    [objectType:protected] => Agent
                                    [name:protected] => New Client
                                    [mbox:protected] => mailto:hello@learninglocker.net
                                    [mbox_sha1sum:protected] => 
                                    [openid:protected] => 
                                    [account:protected] => 
                                )

                            [version:protected] => 1.0.0
                            [attachments:protected] => Array
                                (
                                )

                            [actor:protected] => TinCan\Agent Object
                                (
                                    [objectType:protected] => Agent
                                    [name:protected] => Subhayan Roy
                                    [mbox:protected] => mailto:subhayanroy5@gmail.com
                                    [mbox_sha1sum:protected] => 
                                    [openid:protected] => 
                                    [account:protected] => 
                                )

                            [verb:protected] => TinCan\Verb Object
                                (
                                    [id:protected] => http://activitystrea.ms/schema/1.0/search
                                    [display:protected] => TinCan\LanguageMap Object
                                        (
                                            [_map:protected] => Array
                                                (
                                                    [en-US] => Searched
                                                )

                                        )

                                )

返されたステートメントのリストには権限protectedがあるため、アクセスできません。ステートメントにアクセスするにはどうすればよいですか? ここで何が欠けていますか?

4

1 に答える 1

3

ライブラリに組み込まれているメソッドを使用する必要があります。この場合、必要なのは getStatements です。

$statementResult->content->getStatements();

ここのドキュメントを参照してください: http://rusticisoftware.github.io/TinCanPHP/doc/api/latest/classes/TinCan.StatementsResult.html#method_getStatements

あなたが次に尋ねる質問に答えるために (結果で返されたすべてのステートメントを取得しないのはなぜですか?)、詳細 URL を提供するステートメント結果の getMore メソッドと、詳細を受け入れるリモート LRS の moreStatements メソッドを見てください。 URL を取得し、ステートメントの次のバッチを取得します。このコード サンプルを参照してください: https://github.com/garemoko/TinBadgesPHP/blob/b8789042f4af23f0f7927596e8e7f2a06655db72/TinBadges/RemoteLRS.php#L84-L96

于 2016-02-29T11:36:10.293 に答える