簡體   English   中英

如何將所有 XML 擴展路由到特定方法 codeigniter?

[英]how to route all XML extension to a specific method codeigniter?

我有 codeigniter 項目。 我想通過控制器路由所有 xml 擴展 URL。 如果我的 URL 獲得任何 .xml 擴展名,它將重定向一個特定的控制器方法(因為我必須檢查一些東西),然后它將加載那個 .xml 文件。 所以我寫

 $route['(.xml)'] = "home/xml";

如果我的項目文件夾中不存在 .xml 文件,它會將 all.xml 文件正確重定向到 home/xml 方法。 如果我的項目文件夾中存在那個 .xml 文件,它不會觸發/執行 home/xml,而是直接加載 .xml 文件。 那么我怎樣才能擺脫這個問題呢? 提前致謝。

你可以改變

$config['url_suffix'] = ''; 

進入

$config['url_suffix'] = '.xml';

在你的 config.php 文件中

你可以這樣做

創建一個控制器說 example.php

用方法測試

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Example extends CI_Controller {

public function index()
{

}

public function test()
{
     header( "Content-type: text/xml");

     echo "<?xml version='1.0' encoding='UTF-8'?>
     <rss version='2.0'>
     <channel>
     <title RSS</title>
     <link>/</link>
     <description>Cloud RSS</description>
     <language>en-us</language>";

      // while($row = mysqli_fetch_array($con,$query)){
      //  $title=$row["title"];
      //  $link=$row["link"];
      //  $description=$row["description"];

       echo "<item>
       <title>Title</title>
       <link>Link</link>
       <description>description</description>
       </item>";
     // }
     echo "</channel></rss>";

}}

然后在路線中添加

$route['example/(:any).xml'] = "example/test";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM