Heim  >  Artikel  >  php教程  >  Codeigniter Rss,网站地图,路由配置

Codeigniter Rss,网站地图,路由配置

WBOY
WBOYOriginal
2016-06-13 10:55:08999Durchsuche

_ _,今天在成果不错,完成了网站的三个功能,RSS订阅,自动写网站地图,与路由的配置,好了,现在一 一记录下来.

 

 

 

 

一、路由配置

 

在未设定路由时,路径是这样的

 

 

[php] 

http://www.xiuxiandou.com/content/it/13533/硅谷传奇投资人讲述初创企业家易犯的4大错误   

                   

content =>controller,it=>method,13533=>id,硅谷传奇投资人讲述初创企业家易犯的4大错误=>title  

 

http://www.xiuxiandou.com/content/it/13533/硅谷传奇投资人讲述初创企业家易犯的4大错误

                 

content =>controller,it=>method,13533=>id,硅谷传奇投资人讲述初创企业家易犯的4大错误=>title

设置路由后,访问路径为:

 

 

 

[php] 

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误  

 

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误

其它的类似,路径配置为

 

 

 

[php] 

/*sitemap使用*/  

$route['content-(:any)-(:num)'] = "content/$1/$2";  

/*前台页面显示路由*/  

$route['content-(:any)-(:num)-(:any)'] = "content/$1/$2/$3";  

                  

/*RSS订阅路由*/  

$route['feed-rss-(:any)'] = "feed/rss/$1";  

/*博客路由*/  

$route['blog-(:num)-(:any)'] = "blog/blogview/$1/$2";  

$route['blog-blogtypes-(:any)']="blog/blogtypes/$1";  

                  

/**留言**/  

$route['me'] = "indexs/me";  

/**模板**/  

$route["template"]="indexs/template";  

/**今日更新**/  

$route["indexs-(:any)"]="indexs/$1";  

 

/*sitemap使用*/

$route['content-(:any)-(:num)'] = "content/$1/$2";

/*前台页面显示路由*/

$route['content-(:any)-(:num)-(:any)'] = "content/$1/$2/$3";

                

/*RSS订阅路由*/

$route['feed-rss-(:any)'] = "feed/rss/$1";

/*博客路由*/

$route['blog-(:num)-(:any)'] = "blog/blogview/$1/$2";

$route['blog-blogtypes-(:any)']="blog/blogtypes/$1";

                

/**留言**/

$route['me'] = "indexs/me";

/**模板**/

$route["template"]="indexs/template";

/**今日更新**/

$route["indexs-(:any)"]="indexs/$1";

 

 

二、RSS

 

在libraries目录下创建Rss.php文件,主要负责生成RSS格式的数据内容

 

 

[php]  

/** 

 * Rss 

 */  

class Rss{  

                      

    public function write_rss($in_datas){  

            $CI=& get_instance();  

            $CI->load->helper('xml');  

            $CI->load->helper('text');  

                  

            $xml_str=""  

                    ."";  

            if(!emptyempty($in_datas)){  

                    $xml_str.=""  

                                ."

".$in_datas["feed_name"].""  

                                .""  

                                ."".$in_datas["feed_url"].""  

                                ."".$in_datas["page_description"].""  

                                ."zh-cn "  

                                ."1"  

                                ."hourly "  

                                ."Copyright (C) Xiuxiandou.com. All rights reserved."  

                                ."http://www.xiuxiandou.com";  

                                if(!emptyempty($in_datas["xml_datas"])){  

                                    foreach($in_datas["xml_datas"] as $k => $v){  

                                        foreach($v as $xml){  

                                            $xml_str.=" "  

                                                    ."

subject)."]]> "  

                                                    ."".site_url("content-$k-$xml->id-".xml_convert($CI->mytool->get_title($xml->subject))).""  

                                                    ."".site_url("content-$k-$xml->id-".xml_convert($CI->mytool->get_title($xml->subject))).""  

                                                    ."message, 600))."]]>"  

                                                    ."".date('Y-m-d h:i:s',$xml->dateline)."  "  

                                                    ."$xml->url"  

                                                    ."";  

                                        }  

                                    }  

                                }  

                    $xml_str.="";  

                                 

            }  

            $xml_str.="";  

           return $xml_str;  

    }  

}  

 

/**

 * Rss

 */

class Rss{

                    

    public function write_rss($in_datas){

            $CI=& get_instance();

            $CI->load->helper('xml');

            $CI->load->helper('text');

                

            $xml_str=""

                    ."";

            if(!empty($in_datas)){

                    $xml_str.=""

                                ."

".$in_datas["feed_name"].""

                                .""

                                ."".$in_datas["feed_url"].""

                                ."".$in_datas["page_description"].""

                                ."zh-cn "

                                ."1"

                                ."hourly "

                                ."Copyright (C) Xiuxiandou.com. All rights reserved."

                                ."http://www.xiuxiandou.com";

                                if(!empty($in_datas["xml_datas"])){

                                    foreach($in_datas["xml_datas"] as $k => $v){

                                        foreach($v as $xml){

                                            $xml_str.=" "

                                                    ."

subject)."]]> "

                                                    ."".site_url("content-$k-$xml->id-".xml_convert($CI->mytool->get_title($xml->subject))).""

                                                    ."".site_url("content-$k-$xml->id-".xml_convert($CI->mytool->get_title($xml->subject))).""

                                                    ."message, 600))."]]>"

                                                    ."".date('Y-m-d h:i:s',$xml->dateline)."  "

                                                    ."$xml->url"

                                                    ."";

                                        }

                                    }

                                }

                    $xml_str.="";

                               

            }

            $xml_str.="";

           return $xml_str;

    }

}

 

2、RSS控制类

 

 

 

[php]  

if(!defined('BASEPATH')) exit('No direct script access allowed');  

/** 

 * 2013-2-25:RSS订阅 

 */  

class Feed  extends CI_Controller{  

    public function index(){  

        $it=$this->mcom_model->query_Bywhere(mymsg::BT_ITINFO,array("riqi"=>$this->mytool->get_ymd()));  

        $game=$this->mcom_model->query_Bywhere(mymsg::BT_GAME,array("riqi"=>$this->mytool->get_ymd()));  

        $blog=$this->mcom_model->query_Bywhere(mymsg::BT_BLOG,array("riqi"=>$this->mytool->get_ymd()));  

        $movie=$this->mcom_model->query_Bywhere(mymsg::BT_MOVIE,array("riqi"=>$this->mytool->get_ymd()));  

        $book=$this->mcom_model->query_Bywhere(mymsg::BT_BOOK,array("riqi"=>$this->mytool->get_ymd()));  

        $in_datas["xml_datas"]=array("it"=>$it,"game"=>$game,"blog"=>$blog,"movie"=>$movie,"book"=>$book);  

        $this->_comm($in_datas);  

    }  

    public function rss(){  

       $this->load->helper('xml');  

       $this->load->helper('text');  

       $key= $this->uri->segment(3);  

       $db_table= $key=="it"?"bt_itinfo":"bt_$key";  

       $table_exist=$this->mcom_model->table_exists($db_table);  

       if($table_exist){  

          $in_datas["xml_datas"]=array($key=>$this->mcom_model->query_Bywhere($db_table,array("riqi"=>$this->mytool->get_ymd())));  

          $this->_comm($in_datas);  

       }else{  

         show_404();  

       }  

    }  

                      

    private function _comm($in_datas){  

        $in_datas['feed_name'] = "休闲豆 RSS";   

        $in_datas['feed_url'] = base_url()."free";   

        $in_datas['page_description'] = '休闲豆,IT资讯,IT电子书,游戏种子,电影BT RSS';   

        $in_datas['creator_email'] = '1963612630@qq.com';  

        $in_datas['page_language']="zh-zn";  

        $out_datas["xml"]=$this->rss->write_rss($in_datas);  

        header("Content-Type: text/xml");  

        $this->load->view("rss",$out_datas);  

    }  

}  

 

if(!defined('BASEPATH')) exit('No direct script access allowed');

/**

 * 2013-2-25:RSS订阅

 */

class Feed  extends CI_Controller{

    public function index(){

        $it=$this->mcom_model->query_Bywhere(mymsg::BT_ITINFO,array("riqi"=>$this->mytool->get_ymd()));

        $game=$this->mcom_model->query_Bywhere(mymsg::BT_GAME,array("riqi"=>$this->mytool->get_ymd()));

        $blog=$this->mcom_model->query_Bywhere(mymsg::BT_BLOG,array("riqi"=>$this->mytool->get_ymd()));

        $movie=$this->mcom_model->query_Bywhere(mymsg::BT_MOVIE,array("riqi"=>$this->mytool->get_ymd()));

        $book=$this->mcom_model->query_Bywhere(mymsg::BT_BOOK,array("riqi"=>$this->mytool->get_ymd()));

        $in_datas["xml_datas"]=array("it"=>$it,"game"=>$game,"blog"=>$blog,"movie"=>$movie,"book"=>$book);

        $this->_comm($in_datas);

    }

    public function rss(){

       $this->load->helper('xml');

       $this->load->helper('text');

       $key= $this->uri->segment(3);

       $db_table= $key=="it"?"bt_itinfo":"bt_$key";

       $table_exist=$this->mcom_model->table_exists($db_table);

       if($table_exist){

          $in_datas["xml_datas"]=array($key=>$this->mcom_model->query_Bywhere($db_table,array("riqi"=>$this->mytool->get_ymd())));

          $this->_comm($in_datas);

       }else{

         show_404();

       }

    }

                    

    private function _comm($in_datas){

        $in_datas['feed_name'] = "休闲豆 RSS"; 

        $in_datas['feed_url'] = base_url()."free"; 

        $in_datas['page_description'] = '休闲豆,IT资讯,IT电子书,游戏种子,电影BT RSS'; 

        $in_datas['creator_email'] = '1963612630@qq.com';

        $in_datas['page_language']="zh-zn";

        $out_datas["xml"]=$this->rss->write_rss($in_datas);

        header("Content-Type: text/xml");

        $this->load->view("rss",$out_datas);

    }

}

运行

 

 

 

[html]  

 

 

生成结果如下

 

 

 

[php]  

 

休闲豆 RSS  

 

http://www.xiuxiandou.com/free   

休闲豆,IT资讯,IT电子书,游戏种子,电影BT RSS  

zh-cn  

1  

hourly  

Copyright (C) Xiuxiandou.com. All rights reserved.  

http://www.xiuxiandou.com   

 

  <p>  </p> <p></p>  

 

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误   

 

 

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误   

 

 



'xiuxiandou.com'



Qualys 创始人兼 CEO 菲利普`科尔图特



  北京时间 2 月 25 日消息,据国外媒体报道,美国云计算安全公司…  

]]>  

 

2013-02-25 09:18:49  

http://news.cnblogs.com/n/172129/   

 

....  

 

休闲豆 RSS

http://www.xiuxiandou.com/free

休闲豆,IT资讯,IT电子书,游戏种子,电影BT RSS

zh-cn

1

hourly

Copyright (C) Xiuxiandou.com. All rights reserved.

http://www.xiuxiandou.com

<p></p> <p></p>

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误

http://www.xiuxiandou.com/content-it-13533-硅谷传奇投资人讲述初创企业家易犯的4大错误



'xiuxiandou.com'



Qualys 创始人兼 CEO 菲利普`科尔图特



  北京时间 2 月 25 日消息,据国外媒体报道,美国云计算安全公司…

]]>

2013-02-25 09:18:49

http://news.cnblogs.com/n/172129/

....

 

 

 

 

 3、网站地图     

 

       网站地图主要根据sitemaps.xml协议拼写的XML,协议地址:http://www.sitemaps.org/protocol.html

 

      1、加载libraries目录下的sitemaps.php类,内容如下

 

 

[php]  

            

/** 

 * A class for generating XML sitemaps 

 * 

 * @author Philipp Dörner  

 * @version 0.7 

 * @access public 

 * @package sitemaps 

 */  

class Sitemaps  

{  

    var $items = array();  

            

    function Sitemaps()  

    {  

        $CI =& get_instance();  

                    

        $CI->config->load('sitemaps');  

    }  

            

    /** 

     * Adds a new item to the urlset 

     * 

     * @param array $new_item 

     * @access public 

     */  

    function add_item($new_item)  

    {  

        $this->items[] = $new_item;  

    }  

            

    /** 

     * Adds an array of items to the urlset 

     * 

     * @param array $new_items array of items 

     * @access public 

     */  

    function add_item_array($new_items)  

    {  

        $this->items = array_merge($this->items, $new_items);  

    }  

            

    /** 

     * Generates the sitemap XML data 

     * 

     * @param string $file_name (optional) if file name is supplied the XML data is saved in it otherwise returned as a string 

     * @param bool $gzip (optional) compress sitemap, overwrites config item 'sitemaps_gzip' 

     * @access public 

     * @return string 

     */  

    function build($file_name = null, $gzip = NULL)  

    {  

        $CI =& get_instance();  

        $map = $CI->config->item('sitemaps_header') . "\n";  

            

        foreach($this->items as $item)  

        {  

            $item['loc'] = htmlentities($item['loc'], ENT_QUOTES);  

            $map .= "\t\n\t\t" . $item['loc'] . "\n";  

            

            $attributes = array("lastmod", "changefreq", "priority");  

            

            foreach($attributes AS $attr)  

            {  

                if(isset($item[$attr]))  

                {  

                    $map .= "\t\t" . $item[$attr] . "$attr>\n";  

                }  

            }  

            

            $map .= "\t\n\n";  

        }  

            

        unset($this->items);  

            

        $map .= $CI->config->item('sitemaps_footer');  

            

        if( ! is_null($file_name))  

        {  

            $fh = fopen($file_name, 'a');//w   

            fwrite($fh, $map);  

            fclose($fh);  

            

            if($CI->config->item('sitemaps_filesize_error') && filesize($file_name) > 1024 * 1024 * 30)  

            {  

                show_error('Your sitemap is bigger than 10MB, most search engines will not accept it.');  

            }  

            

            if($gzip OR (is_null($gzip) && $CI->config->item('sitemaps_gzip')))  

            {  

                $gzdata = gzencode($map, 9);  

                $file_gzip = str_replace("{file_name}", $file_name, $CI->config->item('sitemaps_gzip_path'));  

                $fp = fopen($file_gzip, "a");//w   

                fwrite($fp, $gzdata);  

                fclose($fp);  

            

                // Delete the uncompressed sitemap   

                unlink($file_name);  

            

                return $file_gzip;  

            }  

            

            return $file_name;  

        }  

        else  

        {  

            return $map;  

        }  

    }  

            

    /** 

     * Generate a sitemap index file pointing to other sitemaps you previously built 

     * 

     * @param array $urls array of urls, each being an array with at least a loc index 

     * @param string $file_name (optional) if file name is supplied the XML data is saved in it otherwise returned as a string 

     * @param bool $gzip (optional) compress sitemap, overwrites config item 'sitemaps_gzip' 

     * @access public 

     * @return string 

     */  

    function build_index($urls, $file_name = null, $gzip = null)  

    {  

        $CI =& get_instance();  

        $index = $CI->config->item('sitemaps_index_header') . "\n";  

            

        foreach($urls as $url)  

        {  

            $url['loc'] = htmlentities($url['loc'], ENT_QUOTES);  

            $index .= "\t\n\t\t" . $url['loc'] . "\n";  

            

            if(isset($url['lastmod']))  

            {  

                $index .= "\t\t" . $url['lastmod'] . "\n";  

            }  

            

            $index .= "\t\n\n";  

        }  

            

        $index .= $CI->config->item('sitemaps_index_footer');  

            

        if( ! is_null($file_name))  

        {  

            $fh = fopen($file_name, 'w');  

            fwrite($fh, $index);  

            fclose($fh);  

            

            if($CI->config->item('sitemaps_filesize_error') && filesize($file_name) > 1024 * 1024 * 10)  

            {  

                show_error('Your sitemap index is bigger than 10MB, most search engines will not accept it.');  

            }  

            

            if($gzip OR (is_null($gzip) && $CI->config->item('sitemaps_index_gzip')))  

            {  

                $gzdata = gzencode($index, 9);  

                $file_gzip = str_replace("{file_name}", $file_name, $CI->config->item('sitemaps_index_gzip_path'));  

                $fp = fopen($file_gzip, "w");  

                fwrite($fp, $gzdata);  

                fclose($fp);  

            

                // Delete the uncompressed sitemap index   

                unlink($file_name);  

            

                return $file_gzip;  

            }  

            

            return $file_name;  

        }  

        else  

        {  

            return $index;  

        }  

    }  

            

    /** 

     * Notify search engines of your updates sitemap 

     * 

     * @param string $url_xml absolute URL of your sitemap, use Codeigniter's site_url() 

     * @param array $search_engines array of search engines to ping, see config file for notes 

     * @access public 

     * @return array HTTP reponse codes 

     */  

    function ping($url_xml, $search_engines = NULL)  

    {  

        $CI =& get_instance();  

            

        if(is_null($search_engines))  

        {  

            $search_engines = $CI->config->item('sitemaps_search_engines');  

        }  

            

        $statuses = array();  

            

        foreach($search_engines AS $engine)  

        {  

            $status = 0;  

            if($fp = @fsockopen($engine['host'], 80))  

            {  

                $engine['url'] = emptyempty($engine['url']) ? "/ping?sitemap=" : $engine['url'];  

            

                $req =  'GET ' . $engine['url'] .  

                        urlencode($url_xml) . " HTTP/1.1\r\n" .  

                        "Host: " . $engine['host'] . "\r\n" .  

                        $CI->config->item('sitemaps_user_agent') .  

                        "Connection: Close\r\n\r\n";  

                fwrite($fp, $req);  

                while( ! feof($fp))  

                {  

                    if(@preg_match('~^HTTP/\d\.\d (\d+)~i', fgets($fp, 128), $m))  

                    {  

                        $status = intval($m[1]);  

                        break;  

                    }  

                }  

                fclose($fp);  

            }  

            

            $statuses[] = array("host" => $engine['host'], "status" => $status, "request" => $req);  

        }  

            

        if($CI->config->item('sitemaps_log_http_responses') OR $CI->config->item('sitemaps_debug'))  

        {  

            foreach($statuses AS $reponse)  

            {  

                $message = "Sitemaps: " . $reponse['host'] . " responded with HTTP status " . $reponse['status'];  

            

                if($CI->config->item('sitemaps_log_http_responses'))  

                {  

                    $level = $reponse['status'] == 200 ? 'debug' : 'error';  

                    log_message($level, $message);  

                }  

            

                if($CI->config->item('sitemaps_debug'))  

                {  

                    echo "

" . $message . " after request:

\n
" . $reponse['request'] .  "
\n\n";  

                }  

            }  

        }  

            

        return $statuses;  

    }  

}  

 

          

/**

 * A class for generating XML sitemaps

 *

 * @author Philipp Dörner

 * @version 0.7

 * @access public

 * @package sitemaps

 */

class Sitemaps

{

    var $items = array();

          

    function Sitemaps()

    {

        $CI =& get_instance();

                  

        $CI->config->load('sitemaps');

    }

          

    /**

     * Adds a new item to the urlset

     *

     * @param array $new_item

     * @access public

     */

    function add_item($new_item)

    {

        $this->items[] = $new_item;

    }

          

    /**

     * Adds an array of items to the urlset

     *

     * @param array $new_items array of items

     * @access public

     */

    function add_item_array($new_items)

    {

        $this->items = array_merge($this->items, $new_items);

    }

          

    /**

     * Generates the sitemap XML data

     *

     * @param string $file_name (optional) if file name is supplied the XML data is saved in it otherwise returned as a string

     * @param bool $gzip (optional) compress sitemap, overwrites config item 'sitemaps_gzip'

     * @access public

     * @return string

     */

    function build($file_name = null, $gzip = NULL)

    {

        $CI =& get_instance();

        $map = $CI->config->item('sitemaps_header') . "\n";

          

        foreach($this->items as $item)

        {

            $item['loc'] = htmlentities($item['loc'], ENT_QUOTES);

            $map .= "\t\n\t\t" . $item['loc'] . "\n";

          

            $attributes = array("lastmod", "changefreq", "priority");

          

            foreach($attributes AS $attr)

            {

                if(isset($item[$attr]))

                {

                    $map .= "\t\t" . $item[$attr] . "$attr>\n";

                }

            }

          

            $map .= "\t\n\n";

        }

          

        unset($this->items);

          

        $map .= $CI->config->item('sitemaps_footer');

          

        if( ! is_null($file_name))

        {

            $fh = fopen($file_name, 'a');//w

            fwrite($fh, $map);

            fclose($fh);

          

            if($CI->config->item('sitemaps_filesize_error') && filesize($file_name) > 1024 * 1024 * 30)

            {

                show_error('Your sitemap is bigger than 10MB, most search engines will not accept it.');

            }

          

            if($gzip OR (is_null($gzip) && $CI->config->item('sitemaps_gzip')))

            {

                $gzdata = gzencode($map, 9);

                $file_gzip = str_replace("{file_name}", $file_name, $CI->config->item('sitemaps_gzip_path'));

                $fp = fopen($file_gzip, "a");//w

                fwrite($fp, $gzdata);

                fclose($fp);

          

                // Delete the uncompressed sitemap

                unlink($file_name);

          

                return $file_gzip;

            }

          

            return $file_name;

        }

        else

        {

            return $map;

        }

    }

          

    /**

     * Generate a sitemap index file pointing to other sitemaps you previously built

     *

     * @param array $urls array of urls, each being an array with at least a loc index

     * @param string $file_name (optional) if file name is supplied the XML data is saved in it otherwise returned as a string

     * @param bool $gzip (optional) compress sitemap, overwrites config item 'sitemaps_gzip'

     * @access public

     * @return string

     */

    function build_index($urls, $file_name = null, $gzip = null)

    {

        $CI =& get_instance();

        $index = $CI->config->item('sitemaps_index_header') . "\n";

          

        foreach($urls as $url)

        {

            $url['loc'] = htmlentities($url['loc'], ENT_QUOTES);

            $index .= "\t\n\t\t" . $url['loc'] . "\n";

          

            if(isset($url['lastmod']))

            {

                $index .= "\t\t" . $url['lastmod'] . "\n";

            }

          

            $index .= "\t\n\n";

        }

          

        $index .= $CI->config->item('sitemaps_index_footer');

          

        if( ! is_null($file_name))

        {

            $fh = fopen($file_name, 'w');

            fwrite($fh, $index);

            fclose($fh);

          

            if($CI->config->item('sitemaps_filesize_error') && filesize($file_name) > 1024 * 1024 * 10)

            {

                show_error('Your sitemap index is bigger than 10MB, most search engines will not accept it.');

            }

          

            if($gzip OR (is_null($gzip) && $CI->config->item('sitemaps_index_gzip')))

            {

                $gzdata = gzencode($index, 9);

                $file_gzip = str_replace("{file_name}", $file_name, $CI->config->item('sitemaps_index_gzip_path'));

                $fp = fopen($file_gzip, "w");

                fwrite($fp, $gzdata);

                fclose($fp);

          

                // Delete the uncompressed sitemap index

                unlink($file_name);

          

                return $file_gzip;

            }

          

            return $file_name;

        }

        else

        {

            return $index;

        }

    }

          

    /**

     * Notify search engines of your updates sitemap

     *

     * @param string $url_xml absolute URL of your sitemap, use Codeigniter's site_url()

     * @param array $search_engines array of search engines to ping, see config file for notes

     * @access public

     * @return array HTTP reponse codes

     */

    function ping($url_xml, $search_engines = NULL)

    {

        $CI =& get_instance();

          

        if(is_null($search_engines))

        {

            $search_engines = $CI->config->item('sitemaps_search_engines');

        }

          

        $statuses = array();

          

        foreach($search_engines AS $engine)

        {

            $status = 0;

            if($fp = @fsockopen($engine['host'], 80))

            {

                $engine['url'] = empty($engine['url']) ? "/ping?sitemap=" : $engine['url'];

          

                $req =  'GET ' . $engine['url'] .

                        urlencode($url_xml) . " HTTP/1.1\r\n" .

                        "Host: " . $engine['host'] . "\r\n" .

                        $CI->config->item('sitemaps_user_agent') .

                        "Connection: Close\r\n\r\n";

                fwrite($fp, $req);

                while( ! feof($fp))

                {

                    if(@preg_match('~^HTTP/\d\.\d (\d+)~i', fgets($fp, 128), $m))

                    {

                        $status = intval($m[1]);

                        break;

                    }

                }

                fclose($fp);

            }

          

            $statuses[] = array("host" => $engine['host'], "status" => $status, "request" => $req);

        }

          

        if($CI->config->item('sitemaps_log_http_responses') OR $CI->config->item('sitemaps_debug'))

        {

            foreach($statuses AS $reponse)

            {

                $message = "Sitemaps: " . $reponse['host'] . " responded with HTTP status " . $reponse['status'];

          

                if($CI->config->item('sitemaps_log_http_responses'))

                {

                    $level = $reponse['status'] == 200 ? 'debug' : 'error';

                    log_message($level, $message);

                }

          

                if($CI->config->item('sitemaps_debug'))

                {

                    echo "

" . $message . " after request:

\n
" . $reponse['request'] .  "
\n\n";

                }

            }

        }

          

        return $statuses;

    }

}

 

 

 

 

 

  2、sitemap.php控制类,注意这里不要与libraries中的sitemaps.php同名,不然会报错的.

 

 

if(!defined('BASEPATH')) exit('No direct script access allowed');  

/** 

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn