【问题标题】:Twitter Oauth home timeline display with php使用 php 显示 Twitter Oauth 主页时间线
【发布时间】:2012-12-25 06:41:40
【问题描述】:

$hometime= $Twitter->get_statusesHome_timeline();

致命错误:未捕获的异常 'Exception' 带有消息 'SimpleXMLElement::__construct() 需要参数 1 为字符串

<?php
        include 'EpiCurl.php';
        include 'EpiOAuth.php';
        include 'EpiTwitter.php';
        include 'key.php';

        $Twitter = new EpiTwitter($consumerKey, $consumerSecret);
        $oauthToken='xxxxxxxxxxxxxxxxxxxxxxx';
        $oauthSecret='xxxxxxxxxxxxxxxxxxxxxxxxx';

             // user switched pages and came back or got here directly, stilled logged in
             $Twitter->setToken($oauthToken,$oauthSecret);
             $user= $Twitter->get_accountVerify_credentials();

       echo "<img src=\"{$user->profile_image_url}\">";
       echo "{$user->name}";


        $hometime= $Twitter->get_statusesHome_timeline();

        $twitter_status = new SimpleXMLElement($hometime);
        foreach($twitter_status->status as $status){
            echo '<div class="twitter_status">';
            foreach($status->user as $user){
                echo '<img src="'.$user->profile_image_url.'" class="twitter_image">';
                echo '<a href="http://www.twitter.com/'.$user->name.'">'.$user->name.'</a>: ';
            }
            echo $status->text;
            echo '<br/>';
            echo '<div class="twitter_posted_at"><strong>Posted at:</strong> '.$status->created_at.'</div>';
            echo '</div>';
        }

             ?>

【问题讨论】:

    标签: php twitter oauth


    【解决方案1】:

    我最好的猜测是您可能已经关闭了警告(和通知)并且

    $hometime= $Twitter->get_statusesHome_timeline();
    

    call 不返回任何 xml,而是返回“false”,因为它无法连接(或其他东西)。

    您是否尝试在通话后打印 $hometime ?

    【讨论】:

    • 可捕获的致命错误:EpiTwitterJson 类的对象无法转换为字符串
    【解决方案2】:

    $hometime 应该是一个状态对象数组。

    试试

    <?php
    $hometimeline = $Twitter->get_statusesHome_timeline();
    foreach($hometimeline as $status){
        echo '<div class="twitter_status">';
        foreach($status->user as $user){
            echo '<img src="'.$user->profile_image_url.'" class="twitter_image">';
            echo '<a href="http://www.twitter.com/'.$user->name.'">'.$user->name.'</a>: ';
        }
        echo $status->text;
        echo '<br/>';
        echo '<div class="twitter_posted_at"><strong>Posted at:</strong> '.$status->created_at.'</div>';
        echo '</div>';
    }
    

    【讨论】:

    • var_dump($Twitter-&gt;get_statusesHome_timeline()); 在页面上打印什么?
    猜你喜欢
    • 2013-09-06
    • 1970-01-01
    • 2012-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-23
    • 2011-02-12
    • 2013-01-18
    相关资源
    最近更新 更多