簡體   English   中英

Codeigniter更改URL方法名稱

[英]Codeigniter Change URL method name

我是CI新手。

我想使用add_car將地址add_car網址中的函數名稱更改為addcar

其實我的網址創建如下

http://localhost/projectName/controller/add_car

但是我想在URL中關注

http://localhost/projectName/controller/addcar

可能嗎? 請幫我。

[Note] :我的實際方法名稱是add_car

您可以通過兩種方法來完成

方法01

編輯config/routes.php

$route['controller/addcar'] = 'controller/add_car';
$route['controller/deletecar'] = 'controller/delete_car';

輸出 www.exapmle.com/controller/addcar


方法02

根據需要更改控制器功能名稱。

public function addcar($value='')
{
    # code...
}
public function deletecar($value='')
{
    # code...
}

輸出 www.exapmle.com/controller/addcar


進一步的知識

如果使用$route['addcar'] = 'controller/add_car'; 網址看起來像

www.exapmle.com/addcar

add_car函數更改為控制器中的addcar

function add_car(){
  //...
}

function addcar(){
          ^
  //...
}

或在routes.php

$route['controller/add_car'] = "controller/addcar";

$route['controller/([az]+)_([az]+)'] = "controller/$1$2";

上面的示例將在兩個字符串之間將每個請求的包含“ _”的操作路由到不帶“ _”的操作/方法。

有關Code Igniter正則表達式路由的更多信息:
https://ellislab.com/codeigniter/user-guide/general/routing.html

您可以在路線上使用它:

$route['addcar'] = 'Add_car/index';
$route['addcar/(:any)'] = 'Add_car/car_lookup/$1';

和你的控制器

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

class Add_car extends CI_Controller {

public function __construct()
{
    parent::__construct();
}

public function car_lookup($method = NULL)
{
    if (method_exists($this, $method))
    {
        $this->$method();
    }
    else
    {
        $this->index(); // call default index
    }
}

public function index()
{
    echo "index";
}


public function method_a()
{
    echo "aaaaa";
}

public function method_b()
{
    echo "bbbbb";
}
}

暫無
暫無

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

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