Cara menggunakan php namespace to path

Namespace merupakan group atau kumpulan entities (class, object, function) yang dikelompokkan dalam satu nama. Namespace didalam PHP juga menggambarkan directory abstrak sebuah file. Didalam PHP namespace tidak menggambarkan Directory penyimpanan file tersebut. Penggunaan Namespace sangat banyak manfaatnya. Kita bisa membuat class, interface, function dengan unique dengan menggunakan namespace.

Jika anda membuat project yang kecil dan untuk personal, maka kesalahan nama atau nama yang duplikate  tidak akan menjadi permasalahan yang serius, tetapi jika anda ingin membuat project yang besar maka kesalahan ini akan menjadi sesuatu yang sangat serius.  Anda tidak akan bisa mengontrol Class, Interface, Function dan lainnya, jika anda menggunakan Global Namespace.

Deklarasi Namespace.

Untuk membuat namespace sama halnya dengan membuat code PHP biasa yang diawali dengan  tag <?php dan dimulai dengan key word(kata kunci) namespace dan diikuti dengan Nama Namepace nya dan diakhiri dengan tanda semicolon ( ; ). lihat kode dibawah:

Cara menggunakan php namespace to path

Sub Namespace.

Untuk membuat membuat subnamespace kita bisa membuat dengan cara menambahkan karakter \ setelah namespace pertama, contoh :

Cara menggunakan php namespace to path

Cara lain menggunakan namespace dengan menggunakan Kurung Kurawal ( { } )

Cara menggunakan php namespace to path

Global namespace.

Global namespace dibuat dengan tanpa menggunakan nama, hanya menggunakan kata kunci namespace, seperti gambar dibawah ini:

Cara menggunakan php namespace to path

Membuat namespace lebih dari satu, caranya seperti dibawah ini.

Cara menggunakan php namespace to path

Menggunakan namespace.

Cara menggunakan php namespace to path

Menggunakan namespace dengan file yang terpisah, contoh :

File pertama dengan nama Modern1.php, namespace ModernRolly\Kisaran, Class RollyYespputra

Cara menggunakan php namespace to path

File kedua dengan nama  Testing.php , Nama class Testing, dan penyimpanan didalam Folder yang sama:

Cara menggunakan php namespace to path

Output Program :

Cara menggunakan php namespace to path

Aliasing atau Importing.

Aliasing atau importing didalam bahasa pemrograman PHP juga bisa dilakukan dengan menggunakan kata kunci use. Use ini akan memasukkan namespace yang dibutuhkan kedalam program yang dibuat. contoh :

Cara menggunakan php namespace to path

Menggunakan Alias.

Cara menggunakan php namespace to path

Kseimpulan:

Namespace adalah fitur yang sangat berguna dalam mengorganisir komponen dalam aplikasi untuk menghindari terjadinya error karena duplikasi class atau function. Anda akan sangat bergantung pada fitur ini manakala aplikasi yang Anda buat semakin kompleks dan melibatkan banyak library third party, jadi segera biasakan menggunakan namespace mulai sekarang.

Pada tutorial kali ini anda akan belajar bagaimana  cara menggunakan namespace pada PHP Object Oriented Programming.

 

Apakah Anda pernah mengalami tidak bisa membuat sebuah class hanya karena namanya sudah dipakai di tempat lain? Apakah Anda pernah menulis kode seperti di bawah ini hanya untuk memastikan bahwa nama function yang Anda buat tidak bentrok dengan function di tempat lain?

if ( ! function_exists('format_price'))
{
    function format_price($number)
    {
        // code here
    }
}

Jika iya, anda harus belajar menggunakan namespace, karena fungsi dari namespace ini adalah untuk membuat name class alias atau samaran , jadi walaupun kita membuat nama class sama  tetapi tidak akan terkena error seperti ini :

<?php 


class vespa {

	public function index(){

		return 'piagio';
	}
}



class vespa {

	public function index(){

		return 'Vespa';
	}
}



$pgi = new \piagio\vespa;
Echo $pgi->index();
echo '<br>';
$vsp = new \pespa\vespa;
echo $vsp->index();


?>

Cara menggunakan php namespace to path
Cara menggunakan php namespace to path

Agar tidak muncul error saat menggunakan nama class yang sama seperti gambar di atas, maka kita harus menambahkan namespace sebagai alias seperti berikut :

Halo teman-teman pada tutorial kali ini saya akan menjelaskan tentang Cara Penggunaan Namespace Pada OOP. Namespace Pada OOP merupakan sebuah fitur yang terdapat pada PHP yang berfungsi untuk menghindari terjadinya sebuah kesalahan atau error ketika kita membuat sebuah nama class yang sama, dan Namespace juga berfungsi untuk merubah nama class yang sama, dan kita dapat merubahnya dengan nama yang berbeda, jika kita telah menggunakan framework tentu kita banyak menggunakan nama class dan terkadang terdapat nama class yang sama, dan untuk mengantisipasinya supaya tidak terjadi error kita menggunakan yang namanya Namespace.

Biar teman teman lebih paham lagi tentang Namespace kita langsung saja masuk ke study casenya tentang Cara Penggunaan Namespace Pada OOP.

Langkah pertama silahkan teman teman buka text editornya dan simpan script dibawah ini dengan nama Namespace.php, dan coba teman-teman perhatikan pada script yang terdapat dibawah ini

laptop.php

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

<?php

class Laptop {

public function index(){

return 'Samsung';

}

}

 

class Laptop {

public function index() {

return 'Toshiba';

}

}

 

class Laptop {

public function index(){

return 'Acer';

}

}

 

class Laptop {

public function index(){

return 'Asus';

}

}

 

class Laptop {

public function index(){

return 'HP';

}

}

 

$samsung = new Samsung;

echo $samsung->index();

?>

Pada script yang terdapat diatas kita menggunakan nama class yang sama dan jika kita tampilkan pada browser maka hasilnya akan akan terjadi error seperti dibawah ini.

Cara menggunakan php namespace to path
Cara menggunakan php namespace to path

Dan pesan error yang terdapat diatas menandakan bahwa tidak boleh ada nama class yang sama, dan supaya tidak terjadi error maka kita menambahkan namespace, diatas masing-masing classnya seperti script yang terdapat dibawah ini.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

<?php

namespace Samsung;

class Laptop {

public function index(){

return 'Samsung';

}

}

namespace Toshiba;

class Laptop {

public function index() {

return 'Toshiba';

}

}

namespace Acer;

class Laptop {

public function index(){

return 'Acer';

}

}

namespace Asus;

class Laptop {

public function index(){

return 'Asus';

}

}

namespace HP;

class Laptop {

public function index(){

return 'HP';

}

}

Selanjutnya untuk mencetak atau menampilkan hasil dari script yang terdapat diatas kita akan menggunakan namespace dan cara nya seperti dibawah ini

1

2

3

4

5

6

7

8

9

10

11

$samsung = new \Samsung\laptop();

echo $samsung->index();

$toshiba = new \Toshiba\laptop();

echo $toshiba->index();

$acer = new \Acer\laptop();

echo $acer->index();

$asus = new \Asus\laptop();

echo $asus->index();

$hp = new \HP\laptop();

echo $hp->index();

?>

Jika jalankan pada browser maka akan terlihat hasilnya, akan seperti diabawah ini dan tidak akan terjadi error,

Cara menggunakan php namespace to path
Cara menggunakan php namespace to path

dan kita juga dapat menampilkannya dengan menggunakan keyword use dan as seperti dibawah ini,

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

     use \Samsung\laptop as Samsung;

use \Toshiba\laptop as Toshiba;

use \Acer\laptop as Acer;

use \Asus\laptop as Asus;

use \HP\laptop as HP;

 

$samsung = new Samsung;

echo $samsung->index();

$toshiba = new Toshiba;

echo $toshiba->index();

$acer = new Acer;

echo $acer->index();

$asus = new Asus;

echo $asus->index();

$hp = new HP;

echo $hp->index();

?>

jika dijalankan pada browser maka hasilnya akan sama dengan dengan yang sebelumnya.

Oke bagai mana teman teman cukup mudah bukan, tentang Cara Penggunaan Namespace Pada OOP nya, sekian dulu tutorial saya kali ini semoga bermanfaat.

Apa itu namespace di PHP?

Namespace merupakan group atau kumpulan entities (class, object, function) yang dikelompokkan dalam satu nama. Namespace didalam PHP juga menggambarkan directory abstrak sebuah file. Didalam PHP namespace tidak menggambarkan Directory penyimpanan file tersebut. Penggunaan Namespace sangat banyak manfaatnya.

Bagaimana penggunaan dari name space?

Apa Fungsi Dari Namespace? .NET menggunakan namespace sebagai cara untuk memisahkan file-file class kedalam kategori yang terkait (mengorganisir cakupan kategori). Selain itu, penggunaan namespace juga bisa membantu menghindari bentroknya penamaan dalam aplikasi yang mungkin berisi beberapa class dengan nama yang sama.