新浪微博開放平台PHP 類 WeiboClient 說明

來源:互聯網
上載者:User

在初步掌握微博應用開發的流程後,建議通讀一遍weibooauth.php中的代碼,優先讀class WeiboClient中公用方法的定義。這些方法都是直接操作微博和使用者的,清楚有哪些方法,其調用介面、預設參數等。 

 

  本文提供了class WeiboClient中公用方法的說明。這些方法用於直接操作微博和使用者的,需要很熟練地使用,熟知每個方法的名稱、參數和傳回值類型。大多函數的傳回值為array,還需要通過API文檔知道對應array中各欄位的資訊。

     /**
     * 發表圖片微博
     * @access public
     * @param string $text 要更新的微博資訊。
     * @param string $text 要發布的圖片路徑,支援url。[只支援png/jpg/gif三種格式,增加格式請修改get_image_mime方法]
     * @return array
     */
    function upload( $text , $pic_path )

 

據此,我們知道發圖片微博的代碼應該包括:

(1)建立WeiboClient類的對象執行個體(該執行個體來自於授權,一段程式中多種功能可以共用一個執行個體);

  (2)準備微博資訊及圖片url;

  (3)用upload方法發送;

  (4)利用返回的array完成後續處理。

<?php
$c = new WeiboClient( WB_AKEY ,
                      WB_SKEY ,
                     $_SESSION['last_key']['oauth_token'] ,
                     $_SESSION['last_key']['oauth_token_secret']  );
$t=’新微博’;
$p=’ ;
$rr = $c ->upload( $t, $p );
echo "<p>發送完成</p>" ;
}
?>

 

 

<?php $c = new WeiboClient( WB_AKEY , WB_SKEY , $_SESSION['last_key']['oauth_token'] , $_SESSION['last_key']['oauth_token_secret'] ); $t=’新微博’; $p=’ /program/UploadPic/2012-4/20124511228944.jpg’; $rr = $c ->upload( $t, $p ); echo "<p>發送完成</p>" ; } ?>
  下面是class WeiboClient中公用方法的說明。

 

class WeiboClient
{
    /**
     * 建構函式
     *
     * @access public
     * @param mixed $akey 微博開放平台應用APP KEY
     * @param mixed $skey 微博開放平台應用APP SECRET
     * @param mixed $accecss_token OAuth認證返回的token
     * @param mixed $accecss_token_secret OAuth認證返回的token secret
     * @return void
     */
    function __construct( $akey , $skey ,$accecss_token , $accecss_token_secret )
 
    /**
     * 最新公用微博
     *
     * @access public
     * @return array
     */
    function public_timeline()
 
    /**
     * 最新關注人微博
     *
     * @access public
     * @return array
     */
    function friends_timeline()
 
 
    /**
     * 最新關注人微博
     *
     * @access public
     * @return array
     */
    function home_timeline()
 
    /**
     * 最新@使用者的
     *
     * @access public
     * @param int $page 返回結果的頁序號。
     * @param int $count 每次返回的最大記錄數(即頁面大小),不大於200,預設為20。
     * @return array
     */
    function mentions( $page = 1 , $count = 20)
 
 
    /**
     * 發表微博
     *
     * @access public
     * @param mixed $text 要更新的微博資訊。
     * @return array
     */
    function update( $text )
 
  
    /**
     * 發表圖片微博
     *
     * @access public
     * @param string $text 要更新的微博資訊。
     * @param string $text 要發布的圖片路徑,支援url。[只支援png/jpg/gif三種格式,增加格式請修改get_image_mime方法
     ]
     * @return array
     */
    function upload( $text , $pic_path )
 
 
    /**
     * 擷取單條微博
     *
     * @access public
     * @param mixed $sid 要擷取已發表的微博ID
     * @return array
     */
    function show_status( $sid )
 
    /**
     * 刪除微博
     *
     * @access public
     * @param mixed $sid 要刪除的微博ID
     * @return array
     */
    function delete( $sid )
 
 
    /**
     * 刪除微博
     *
     * @access public
     * @param mixed $sid 要刪除的微博ID
     * @return array
     */
    function destroy( $sid )
 
 
    /**
     * 設定檔
     *
     * @access public
     * @param mixed $uid_or_name 使用者UID或微博暱稱。
     * @return array
     */
    function show_user( $uid_or_name = null )
 
    /**
     * 關注人列表
     *
     * @access public
     * @param bool $cursor 單頁只能包含100個關注列表,為了擷取更多則cursor預設從-1開始,通過增加或減少cursor來獲
     取更多的關注列表
     * @param bool $count 每次返回的最大記錄數(即頁面大小),不大於200,預設返回20
     * @param mixed $uid_or_name 要擷取的 UID或微博暱稱
     * @return array
     */
    function friends( $cursor = false , $count= false , $uid_or_name = null )
 
 
    /**
     * 粉絲列表
     *
     * @access public
     * @param bool $cursor 單頁只能包含100個粉絲列表,為了擷取更多則cursor預設從-1開始,通過增加或減少cursor來獲
     取更多的粉絲列表
     * @param bool $count 每次返回的最大記錄數(即頁面大小),不大於200,預設返回20。
     * @param mixed $uid_or_name  要擷取的UID或微博暱稱
     * @return array
     */
    function followers( $cursor = false ,$count = false , $uid_or_name = null )
 
 
    /**
     * 關注一個使用者
     *
     * @access public
     * @param mixed $uid_or_name 要關注的使用者UID或微博暱稱
     * @return array
     */
    function follow( $uid_or_name )
 
 
    /**
     * 取消追蹤某使用者
     *
     * @access public
     * @param mixed $uid_or_name 要取消追蹤的使用者UID或微博暱稱
     * @return array
     */
    function unfollow( $uid_or_name )
 
 
    /**
     * 返回兩個使用者關係的詳細情況
     *
     * @access public
     * @param mixed $uid_or_name 要判斷的使用者UID
     * @return array
     */
    function is_followed( $uid_or_name )
 
 
    /**
     * 使用者發表微博列表
     * 
     * @access public
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @param mixed $uid_or_name 指定使用者UID或微博暱稱
     * @return array
     */
    function user_timeline( $page = 1 , $count= 20 , $uid_or_name = null )
 
 
    /**
     * 擷取私信列表
     *
     * @access public
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @return array
     */
    function list_dm( $page = 1 , $count =20  )
 
 
    /**
     * 發送的私信列表
     *
     * @access public
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @return array
     */
    function list_dm_sent( $page = 1 , $count =20 )
 
 
    /**
     * 發送私信
     *
     * @access public
     * @param mixed $uid_or_name UID或微博暱稱
     * @param mixed $text 要發生的訊息內容,文字大小必須小於300個漢字。
     * @return array
     */
    function send_dm( $uid_or_name , $text )
 
 
    /**
     * 刪除一條私信
     *
     * @access public
     * @param mixed $did 要刪除的私信主鍵ID
     * @return array
     */
    function delete_dm( $did )
 
 
    /**
     * 轉寄一條微博資訊。
     *
     * @access public
     * @param mixed $sid 轉寄的微博ID
     * @param bool $text 添加的轉寄資訊。
     * @return array
     */
    function repost( $sid , $text = false )
 
 
    /**
     * 對一條微博資訊進行評論
     *
     * @access public
     * @param mixed $sid 要評論的微博id
     * @param mixed $text 評論內容
     * @param bool $cid 要評論的評論id
     * @return array
     */
    function send_comment( $sid , $text , $cid= false )
 
 
    /**
     * 發出的評論
     *
     * @access public
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @return array
     */
    function comments_by_me( $page = 1 , $count= 20 )
 
 
    /**
     * 最新評論(按時間)
     *
     * @access public
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @return array
     */
    function comments_timeline( $page = 1 ,$count = 20 )
 
 
    /**
     * 單條評論列表(按微博)
     *
     * @access public
     * @param mixed $sid 指定的微博ID
     * @param int $page 頁碼
     * @param int $count 每次返回的最大記錄數,最多返回200條,預設20。
     * @return array
     */
    function get_comments_by_sid( $sid , $page= 1 , $count = 20 )
 
 
    /**
     * 批量統計微博的評論數,轉寄數,一次請求最多擷取100個。
     *
     * @access public
     * @param mixed $sids 微博ID號列表,用逗號隔開
     * @return array
     */
    function get_count_info_by_ids( $sids )
 
 
    /**
     * 對一條微博評論資訊進行回複。
     *
     * @access public
     * @param mixed $sid 微博id
     * @param mixed $text 評論內容。
     * @param mixed $cid 評論id
     * @return array
     */
    function reply( $sid , $text , $cid )
 
 
    /**
     * 返回使用者的發布的最近20條收藏資訊,和使用者收藏頁面返回內容是一致的。
     *
     * @access public
     * @param bool $page 返回結果的頁序號。
     * @return array
     */
    function get_favorites( $page = false )
 
 
    /**
     * 收藏一條微博資訊
     *
     * @access public
     * @param mixed $sid 收藏的微博id
     * @return array
     */
    function add_to_favorites( $sid )
 
 
    /**
     * 刪除微博收藏。
     *
     * @access public
     * @param mixed $sid 要刪除的收藏微博資訊ID.
     * @return array
     */
    function remove_from_favorites( $sid )
  
  
    function verify_credentials()
 
    /**
     * 修改頭像
     *
     */   
    function update_avatar( $pic_path )
 



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.