Belajar PHP OOP Part 1.10 : Import

import

use Keyword

  • Sebelumnya kita sudah tahu bahwa untuk menggunakan class, function atau constant di namespace kita perlu menyebutkan nama namespace nya di awal
  • Jika terlalu sering menggunakan class, function atau constant yang sama, maka terlalu banyak duplikasi dengan menyebutkan namespace yang sama berkali-kali
  • Hal ini bisa kita hindari dengan cara, mengimport class, function atau constant tersebut dengan menggunakan kata kunci use

<?php

namespace Data\One{

class Conflict
{

}
}


namespace Data\Two {
class Conflict
{

}
}
<?php

namespace Helper;

function helpMe ()
{
echo "HELP ME" . PHP_EOL;
}

const APPLICATION = "Belajar PHP OOP";
<?php

require_once "data/Conflict.php";
require_once "data/Helper.php";

use Data\One\Conflict;
use function Helper\helpMe;
use const Helper\APPLICATION;

//Object
$conflict1 = new Conflict();
$conflict2 = new Data\Two\Conflict();

//Methode/ Function
helpMe();

//Constant
echo APPLICATION . PHP_EOL;
use result

Alias

  • Saat kita menggunakan use, artinya kita tidak perlu lagi menggunakan nama namespace diawal, ketika class membuat object  menggunakan class,method, constant tersebut
  • Namun bagaimana jika ternyata nama class nya sama ?
  • Untungnya PHP memiliki fitur yang namanya alias
  • Alias adalah kemampuan membuat nama lain dari class, function atau constant yang ada
  • Kita bisa menggunakan kata kunci as setelah melakukan
<?php

require_once "data/Conflict.php";
require_once "data/Helper.php";

use Data\One\Conflict as conflict1;
use Data\Two\Conflict as conflict2;
use function Helper\helpMe as help;
use const Helper\APPLICATION as APP;

//Object
$conflict1 = new Conflict1();
$conflict2 = new Conflict2();

//Methode/ Function
help();

//Constant
echo APP . PHP_EOL;
alias

Group use Declaration

  • Kadang kita butuh melakukan import banyak hal di satu namespace yang sama
  • PHP memiliki fitur grup use, dimana kita bisa import beberapa class, function atau constant dalam satu perintan use
  • Untuk melakukan itu, kita bisa menggunkan kurung {}
<?php

namespace Data\One{
//Import Group
class Conflict
{

}

//Import Group
class Sample
{

}

//Import Group
class Dummy
{

}
}


namespace Data\Two {
class Conflict
{

}
}
<?php

namespace Helper;

//Import Group
function helpMe ()
{
echo "HELP ME" . PHP_EOL;
}

const APPLICATION = "Belajar PHP OOP";
<?php

require_once "data/Conflict.php";
require_once "data/Helper.php";

use Data\One\{Conflict as Conflict1, Sample, Dummy};
use function Helper\{helpMe};

$conflict = new Conflict1();
$sample = new Sample();
$dummy = new Dummy();

Next Post Previous Post
No Comment
Add Comment
comment url