Php 如何过滤API数组对象响应

Php 如何过滤API数组对象响应,php,arrays,regex,cakephp,Php,Arrays,Regex,Cakephp,API响应: $storiesResponse = $login->getStoriesResponse(); if (strpos($storiesResponse, 'mzaboss') == false) { echo "mzaboss is not available! die! \n"; die; } else { for

API响应:

                $storiesResponse = $login->getStoriesResponse();
            if (strpos($storiesResponse, 'mzaboss') == false) {
                echo "mzaboss is not available! die! \n";
                die;
            } else {
        foreach($storiesResponse->getFriendStories() as $friendStories){
            $friendStoriesUsername = $friendStories->getUsername();
                $storiesContainer = $friendStories->getStories();    
        foreach($storiesContainer as $storyContainer){
            $story = $storyContainer->getStory();
            echo "Mark as viewed story ID: " . $story->getId() . "\n";
                $snapchat->markStoryViewed($story->getId());
            }
            $account_id = $i + 1;
            // return true;
            }
        }
    }
$storiesResponse是非常长的数组对象。我想知道“mzaboss”是否在数组对象响应中,如果它存在,那么就好,如果它不存在,那么就死

但总是出错:

object(X\API\Response\Model\FriendStories)#14161 (2) {
  ["username":"X\API\Response\Model\FriendStories":private]=>
  string(7) "mzaboss"
  ["stories":"X\API\Response\Model\FriendStories":private]=>
  array(1) {
    [0]=>
    object(X\API\Response\Model\FriendStoryContainer)#14166 (2) {
      ["story":"X\API\Response\Model\FriendStoryContainer":private]=>
      object(X\API\Response\Model\Story)#14168 (16) {
        ["id":"X\API\Response\Model\Story":private]=>
        string(21) "mzaboss~1467880186851"
        ["username":"X\API\Response\Model\Story":private]=>
        string(7) "mzaboss"
        ["mature_content":"X\API\Response\Model\Story":private]=>
        bool(false)
        ["client_id":"X\API\Response\Model\Story":private]=>
        string(44) "MZABOSS~E02D10B1-9D0B-4698-A9E8-EB43F4D4281D"
        ["timestamp":"X\API\Response\Model\Story":private]=>
        int(1467880186851)
        ["media_id":"X\API\Response\Model\Story":private]=>
        string(16) "6315314297815040"
        ["media_key":"X\API\Response\Model\Story":private]=>
        string(44) "Z0xvmwDCcY3leDm3DC4QPdOGh+9va4iYEbb0Zs0YkUQ="
        ["media_iv":"X\API\Response\Model\Story":private]=>
        string(24) "C+omyS1YQncoraMO0iY4jg=="
        ["thumbnail_iv":"X\API\Response\Model\Story":private]=>
        string(24) "WB4E4e0w0ToXZOqBI+z87w=="
        ["media_type":"X\API\Response\Model\Story":private]=>
        int(0)
        ["time":"X\API\Response\Model\Story":private]=>
        float(3)
        ["caption_text_display":"X\API\Response\Model\Story":private]=>
        NULL
        ["zipped":"X\API\Response\Model\Story":private]=>
        bool(false)
        ["time_left":"X\API\Response\Model\Story":private]=>
        int(86296613)
        ["needs_auth":"X\API\Response\Model\Story":private]=>
        bool(false)
        ["is_shared":"X\API\Response\Model\Story":private]=>
        bool(false)
      }
      ["viewed":"X\API\Response\Model\FriendStoryContainer":private]=>
      bool(false)
    }
  }
}
mzaboss不可用!死

要么mzaboss在那里,要么不在。它会死的


有什么帮助吗?谢谢。

您的
$storiesResponse
数组
而不是
字符串
。所以你应该在数组()中使用
,除了
strpos()

函数的作用是:查找一个字符串在另一个字符串中第一次出现的位置

并且,
in_array()
检查数组中是否存在值

PHP Warning:  strpos() expects parameter 1 to be string, object given in /home/mzapc/test/asstest/adder/marker/marker.php on line 143
这会起作用的


但是如果“mzaboss”不在那里,我想暂停代码5分钟,然后重新登录到第一个帐户。

给我错误:PHP警告:in_array()期望参数2是数组,第143行的/home/mzapc/test/asstest/adder/marker/marker.PHP中给出的对象
  $storiesResponse = $login->getStoriesResponse();
        if (in_array('mzaboss', $storiesResponse)) {
             foreach($storiesResponse->getFriendStories() as $friendStories){
        $friendStoriesUsername = $friendStories->getUsername();
            $storiesContainer = $friendStories->getStories();    
    foreach($storiesContainer as $storyContainer){
        $story = $storyContainer->getStory();
        echo "Mark as viewed story ID: " . $story->getId() . "\n";
            $snapchat->markStoryViewed($story->getId());
        }
        $account_id = $i + 1;
        // return true;
        }
        } 
        else {
             echo "mzaboss is not available! die! \n";
            die;
     }
                    $storiesResponse = $login->getStoriesResponse();
            foreach($storiesResponse->getFriendStories() as $friendStories){
                if($friendStories->getUsername() == "mzaboss"){ 
                    echo "debugger - mzaboss found\n";
                $friendStoriesUsername = $friendStories->getUsername();
                    $storiesContainer = $friendStories->getStories();    
            foreach($storiesContainer as $storyContainer){
                $story = $storyContainer->getStory();
                echo "Mark as viewed story ID: " . $story->getId() . "\n";
                    $snapchat->markStoryViewed($story->getId());
                }
                $account_id = $i + 1;
                // return true;
                }