728x90 AdSpace

Tutorial Flash dan PHP lengkap

Latest News

Tuesday, May 27, 2014

Cara routing pada codeigniter

disini akan di jelaskan bagaimana mengubah proses routing url pada codeigniter menentukan alamat url sesuka anda dan anda bisa mencobannya dengan mengubah file routes.php pada folder application/config/routes.php
Biasanya ada hubungan satu-ke-satu antara string URL dan kelas controller / metode yang sesuai. Segmen di URI biasanya mengikuti pola ini:
example.com / class /fungsiid /
Dalam beberapa kasus, bagaimanapun, Anda mungkin ingin remap hubungan ini sehingga kelas yang berbeda / fungsi bisa disebut bukan satu sesuai dengan URL.
Sebagai contoh, katakanlah Anda ingin URL Anda memiliki prototipe ini:
example.com/product/1 /
example.com/product/2 /
example.com/product/3 /
example.com/product/4 /
Biasanya segmen kedua dari URL yang disediakan untuk nama fungsi, tetapi dalam contoh di atas itu bukannya memiliki ID produk. Untuk mengatasi hal ini, CodeIgniter memungkinkan Anda untuk remap URI handler.

Menetapkan aturan routing Anda sendiri

Aturan routing didefinisikan dalam Anda aplikasi / config / routes.php berkas. Di dalamnya Anda akan melihat sebuah array disebut $ rute yang memungkinkan Anda untuk menentukan kriteria routing sendiri. Rute baik dapat ditentukan dengan menggunakan wildcard atau Regular Expressions

Wildcard

Sebuah wildcard rute khas mungkin terlihat seperti ini:
$route['produk /: num'] = "Katalog / product_lookup";
Dalam rute, kunci array berisi URI untuk dicocokkan, sementara nilai array berisi tujuan itu harus kembali dialihkan ke. Dalam contoh di atas, jika kata literal "produk" ditemukan dalam segmen pertama dari URL, dan nomor ditemukan di segmen kedua, "katalog" kelas dan metode "product_lookup" malah digunakan.
Anda dapat mencocokkan nilai-nilai literal atau Anda dapat menggunakan dua jenis wildcard:
(: Num) akan cocok dengan segmen yang hanya berisi angka. (: any) akan cocok dengan segmen yang mengandung karakter apapun.
Catatan: Rute akan berjalan dalam urutan mereka didefinisikan. Tinggi rute akan selalu lebih diutamakan daripada yang lebih rendah.

Contoh

Berikut adalah beberapa contoh routing yang:
$route['jurnal'] = "blog";
Sebuah URL yang mengandung kata "jurnal" di segmen pertama akan dipetakan ke "blog" kelas.
$route['blog / joe'] = "blogs/users/34";
Sebuah URL yang mengandung segmen blog / joe akan dipetakan ke "blog" kelas dan "pengguna" metode. ID tersebut akan ditetapkan ke "34".
$route['produk / (: any)'] = "Katalog / product_lookup";
Sebuah URL dengan "produk" sebagai segmen pertama, dan apa pun di kedua akan dipetakan ke "katalog" kelas dan metode "product_lookup".
$route['produk / (: num)'] = "Katalog / product_lookup_by_id / $ 1";
Sebuah URL dengan "produk" sebagai segmen pertama, dan nomor dalam kedua akan dipetakan ke "katalog" kelas dan "product_lookup_by_id" metode passing dalam pertandingan sebagai variabel ke fungsi.
Penting: Jangan gunakan terkemuka / mengikuti garis miring.

Regular Expressions

Jika Anda lebih suka Anda dapat menggunakan ekspresi reguler untuk mendefinisikan aturan-aturan routing. Setiap ekspresi reguler yang valid diperbolehkan, seperti back-referensi.
Catatan:   Jika Anda menggunakan back-referensi Anda harus menggunakan sintaks dolar daripada sintaks backslash ganda.
Sebuah regex rute khas mungkin terlihat seperti ini:
$route['produk / ([az] +) / (\ d +)'] = "$ 1/id_ $ 2";
Dalam contoh di atas, URI mirip dengan products/shirts/123 malah akan memanggil kemeja kelas kontroler dan id_123 fungsi.
Anda juga dapat mencampur dan wildcard cocok dengan ekspresi reguler.

Rute Reserved

Ada dua milik rute:
$route['default_controller'] = 'Selamat datang';
Rute ini menunjukkan kelas kontroler yang harus dimuat jika URI tidak berisi data, yang akan terjadi ketika orang-orang beban URL root anda. Dalam contoh di atas, "Selamat datang" kelas akan dimuat. Anda dianjurkan untuk selalu memiliki rute default sebaliknya halaman 404 akan muncul secara default.
$route['404_override '] ='';
Rute ini menunjukkan kelas kontroler yang harus dimuat jika kontroler yang diminta tidak ditemukan. Ini akan menimpa default 404 halaman kesalahan. Ini tidak akan berpengaruh terhadapshow_404 ()fungsi, yang akan terus memuat default error_404.php file pada application/errors/error_404.php .
Cara routing pada codeigniter
  • Blogger Comments
  • Facebook Comments

3 comments:

  1. Halah mas, google translate

    ReplyDelete
  2. koooplaakkk.. translatee...

    ReplyDelete
  3. oalah bro bro mau dapetin traffic segininya duh miris

    ReplyDelete

Top