<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 引用通告類 引用通告類提供了一些方法用于發送和接受引用通告數據。 如果你還不知道什么是引用通告,可以在?[這里](http://en.wikipedia.org/wiki/Trackback)?找到更多信息。 * [使用引用通告類](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id3) * [初始化類](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id4) * [發送引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id5) * [接受引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id6) * [你的 Ping URL](http://codeigniter.org.cn/user_guide/libraries/trackback.html#ping-url) * [新建 Trackback 表](http://codeigniter.org.cn/user_guide/libraries/trackback.html#trackback) * [處理引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id7) * [說明](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id8) * [類參考](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id9) ## [使用引用通告類](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id10) ### [初始化類](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id11) 正如 CodeIgniter 中的其他類一樣,在你的控制器中使用?$this->load->library()?方法來初始化引用通告類: ~~~ $this->load->library('trackback'); ~~~ 初始化之后,引用通告類的對象就可以這樣訪問: ~~~ $this->trackback ~~~ ### [發送引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id12) 可以在你的控制器的任何方法中使用類似于如下代碼來發送引用通告: ~~~ $this->load->library('trackback'); $tb_data = array( 'ping_url' => 'http://example.com/trackback/456', 'url' => 'http://www.my-example.com/blog/entry/123', 'title' => 'The Title of My Entry', 'excerpt' => 'The entry content.', 'blog_name' => 'My Blog Name', 'charset' => 'utf-8' ); if ( ! $this->trackback->send($tb_data)) { echo $this->trackback->display_errors(); } else { echo 'Trackback was sent!'; } ~~~ 數組中每一項的解釋: * **ping_url**?- 你想發送引用通告到該站點的 URL ,你可以同時向發送多個 URL 發送,多個 URL 之間使用逗號分割 * **url**?- 對應的是你的博客的 URL * **title**?- 你的博客標題 * **excerpt**?- 你的博客內容(摘要) * **blog_name**?- 你的博客的名稱 * **charset**?- 你的博客所使用的字符編碼,如果忽略,默認使用 UTF-8 注解 引用通告類會自動發送你的博客的前 500 個字符,同時它也會去除所有的 HTML 標簽。 發送引用通告的方法會根據成功或失敗返回 TRUE 或 FALSE ,如果失敗,可以使用下面的代碼獲取錯誤信息: ~~~ $this->trackback->display_errors(); ~~~ ### [接受引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id13) 在接受引用通告之前,你必須先創建一個博客,如果你還沒有博客, 那么接下來的內容對你來說就沒什么意義。 接受引用通告比發送要復雜一點,這是因為你需要一個數據庫表來保存它們, 而且你還需要對接受到的引用通告數據進行驗證。我們鼓勵你實現一個完整的驗證過程, 來防止垃圾信息和重復數據。你可能還希望限制一段時間內從某個 IP 發送過來的引用通告的數量, 以此減少垃圾信息。接受引用通告的過程很簡單,驗證才是難點。 ### [你的 Ping URL](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id14) 為了接受引用通告,你必須在你的每篇博客旁邊顯示一個引用通告 URL , 人們使用這個 URL 來向你發送引用通告(我們稱其為 Ping URL)。 你的 Ping URL 必須指向一個控制器方法,在該方法中寫接受引用通告的代碼,而且該 URL 必須包含你博客的 ID ,這樣當接受到引用通告時你就可以知道是針對哪篇博客的。 例如,假設你的控制器類叫 Trackback ,接受方法叫 receive ,你的 Ping URL 將類似于下面這樣: ~~~ http://example.com/index.php/trackback/receive/entry_id ~~~ 其中,entry_id 代表你每篇博客的 ID 。 ### [新建 Trackback 表](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id15) 在接受引用通告之前,你必須創建一個數據庫表來儲存它。下面是表的一個基本原型: ~~~ CREATE TABLE trackbacks ( tb_id int(10) unsigned NOT NULL auto_increment, entry_id int(10) unsigned NOT NULL default 0, url varchar(200) NOT NULL, title varchar(100) NOT NULL, excerpt text NOT NULL, blog_name varchar(100) NOT NULL, tb_date int(10) NOT NULL, ip_address varchar(45) NOT NULL, PRIMARY KEY `tb_id` (`tb_id`), KEY `entry_id` (`entry_id`) ); ~~~ 在引用通告的規范中只有四項信息是發送一個引用通告所必須的:url、title、excerpt 和 blog_name 。 但為了讓數據更有用,我們還在表中添加了幾個其他的字段(date、ip_address 等)。 ### [處理引用通告](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id16) 下面是一個如何接受并處理引用通告的例子。下面的代碼將放在你的接受引用通告的控制器方法中: ~~~ $this->load->library('trackback'); $this->load->database(); if ($this->uri->segment(3) == FALSE) { $this->trackback->send_error('Unable to determine the entry ID'); } if ( ! $this->trackback->receive()) { $this->trackback->send_error('The Trackback did not contain valid data'); } $data = array( 'tb_id' => '', 'entry_id' => $this->uri->segment(3), 'url' => $this->trackback->data('url'), 'title' => $this->trackback->data('title'), 'excerpt' => $this->trackback->data('excerpt'), 'blog_name' => $this->trackback->data('blog_name'), 'tb_date' => time(), 'ip_address' => $this->input->ip_address() ); $sql = $this->db->insert_string('trackbacks', $data); $this->db->query($sql); $this->trackback->send_success(); ~~~ #### [說明](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id17) entry_id 將從你的 URL 的第三段獲取,這是基于我們之前例子中的 URL: ~~~ http://example.com/index.php/trackback/receive/entry_id ~~~ 注意 entry_id 是第三段,你可以這樣獲取: ~~~ $this->uri->segment(3); ~~~ 在我們上面的接受引用通告的代碼中,如果第三段為空,我們將發送一個錯誤信息。 如果沒有有效的 entry_id ,沒必要繼續處理下去。 $this->trackback->receive() 是個簡單的驗證方法,它檢查接受到的數據并確保包含了 我們所需的四種信息:url、title、excerpt 和 blog_name 。該方法成功返回 TRUE , 失敗返回 FALSE 。如果失敗,也發送一個錯誤信息。 接受到的引用通告數據可以通過下面的方法來獲取: ~~~ $this->trackback->data('item') ~~~ 其中,item 代表四種信息中的一種:url、title、excerpt 和 blog_name 。 如果引用通告數據成功接受,你可以使用下面的代碼發送一個成功消息: ~~~ $this->trackback->send_success(); ~~~ 注解 上面的代碼中不包含數據校驗,我們建議你添加。 ## [類參考](http://codeigniter.org.cn/user_guide/libraries/trackback.html#id18) classCI_Trackback $data = array('url' => '', 'title' => '', 'excerpt' => '', 'blog_name' => '', 'charset' => '') 引用通告數據的數組。 $convert_ascii = TRUE 是否將高位 ASCII 和 MS Word 特殊字符 轉換為 HTML 實體。 send($tb_data) 參數: * **$tb_data**?(array) -- Trackback data 返回: TRUE on success, FALSE on failure 返回類型: bool 發送引用通告。 receive() 返回: TRUE on success, FALSE on failure 返回類型: bool 該方法簡單的檢驗接受到的引用通告數據,成功返回 TRUE ,失敗返回 FALSE 。 如果數據是有效的,將添加到?$this->data?數組,以便保存到數據庫。 send_error([$message = 'Incomplete information') 參數: * **$message**?(string) -- Error message 返回類型: void 向引用通告請求返回一條錯誤信息。 注解 該方法將會終止腳本的執行。 send_success() 返回類型: void 向引用通告請求返回一條成功信息。 注解 該方法將會終止腳本的執行。 data($item) 參數: * **$item**?(string) -- Data key 返回: Data value or empty string if not found 返回類型: string 從引用通告數據中獲取一項記錄。 process($url,?$data) 參數: * **$url**?(string) -- Target url * **$data**?(string) -- Raw POST data 返回: TRUE on success, FALSE on failure 返回類型: bool 打開一個 socket 連接,并將數據傳送到服務器。成功返回 TRUE ,失敗返回 FALSE 。 extract_urls($urls) 參數: * **$urls**?(string) -- Comma-separated URL list 返回: Array of URLs 返回類型: array 該方法用于發送多條引用通告,它接受一個包含多條 URL 的字符串 (以逗號或空格分割),將其轉換為一個數組。 validate_url(&$url) 參數: * **$url**?(string) -- Trackback URL 返回類型: void 如果 URL 中沒有包括協議部分,該方法簡單將?http://?前綴添加到 URL 前面。 get_id($url) 參數: * **$url**?(string) -- Trackback URL 返回: URL ID or FALSE on failure 返回類型: string 查找并返回一個引用通告 URL 的 ID ,失敗返回 FALSE 。 convert_xml($str) 參數: * **$str**?(string) -- Input string 返回: Converted string 返回類型: string 將 XML 保留字符轉換為實體。 limit_characters($str[,?$n = 500[,?$end_char = '&#8230;']]) 參數: * **$str**?(string) -- Input string * **$n**?(int) -- Max characters number * **$end_char**?(string) -- Character to put at end of string 返回: Shortened string 返回類型: string 將字符串裁剪到指定字符個數,會保持單詞的完整性。 convert_ascii($str) 參數: * **$str**?(string) -- Input string 返回: Converted string 返回類型: string 將高位 ASCII 和 MS Word 特殊字符轉換為 HTML 實體。 set_error($msg) 參數: * **$msg**?(string) -- Error message 返回類型: void 設置一個錯誤信息。 display_errors([$open = ''[,?$close = '']]) 參數: * **$open**?(string) -- Open tag * **$close**?(string) -- Close tag 返回: HTML formatted error messages 返回類型: string 返回 HTML 格式的錯誤信息,如果沒有錯誤,返回空字符串。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看