diff options
| -rw-r--r-- | id-id/php-id.html.markdown | 239 | 
1 files changed, 118 insertions, 121 deletions
| diff --git a/id-id/php-id.html.markdown b/id-id/php-id.html.markdown index 491a190e..34d6e5f5 100644 --- a/id-id/php-id.html.markdown +++ b/id-id/php-id.html.markdown @@ -567,34 +567,34 @@ echo $kelas_saya->properti;             // => "publik"  echo $kelas_saya->propertiInstansi;     // => "Sebuah properti instansi"  $kelas_saya->methodSaya();              // => "KelasSaya" -// Extend classes using "extends" -class MyOtherClass extends MyClass +// Menurunkan kelas menggunakan kata kunci "extends" +class KelasSayaLainnya extends KelasSaya  { -    function printProtectedProperty() +    function tampilkanPropertiTerlindungi()      { -        echo $this->prot; +        echo $this->properti;      } -    // Override a method -    function myMethod() +    // "override" terhadap sebuah method +    function methodSaya()      { -        parent::myMethod(); -        print ' > MyOtherClass'; +        parent::methodSaya(); +        print ' > KelasSayaLainnya';      }  } -$my_other_class = new MyOtherClass('Instance prop'); -$my_other_class->printProtectedProperty(); // => Prints "protected" -$my_other_class->myMethod();               // Prints "MyClass > MyOtherClass" +$kelas_saya_lainnya = new KelasSayaLainnya('Instansiasi properti'); +$kelas_saya_lainnya->tampilkanPropertiTerlindung();     // => Menampilkan "terlindungi" +$kelas_saya_lainnya->methodSaya();                      // Menampilkan "KelasSaya > KelasSayaLainnya" -final class YouCannotExtendMe +final class SayaTidakBisaDiturunkan  {  } -// You can use "magic methods" to create getters and setters -class MyMapClass +// Gunakan method ajaib (magic method) untuk membuat fungsi "getters" dan "setters" +class PetaKelasSaya  { -    private $property; +    private $properti;      public function __get($key)      { @@ -607,127 +607,125 @@ class MyMapClass      }  } -$x = new MyMapClass(); -echo $x->property; // Will use the __get() method -$x->property = 'Something'; // Will use the __set() method +$x = new PetaKelasSaya(); +echo $x->properti;          // akan memanggil method __get() +$x->properti = 'Sesuatu';   // akan memanggil method __set(); -// Classes can be abstract (using the abstract keyword) or -// implement interfaces (using the implements keyword). -// An interface is declared with the interface keyword. +// Kelas dapat dijadikan abstrak (menggunakan kata kunci "abstract"), atau +// meng-implementasikan interfaces (menggunakan kata kunci "implements"). +// Sebuah interface dideklarasikan dengan perintah "interface". -interface InterfaceOne +interface InterfaceSatu  { -    public function doSomething(); +    public function kerjakanSesuatu();  } -interface InterfaceTwo +interface InterfaceDua  { -    public function doSomethingElse(); +    public function kerjakanYangLain();  } -// interfaces can be extended -interface InterfaceThree extends InterfaceTwo +// interface dapat diturunkan +interface InterfaceTiga extends InterfaceDua  { -    public function doAnotherContract(); +    public function kerjakanYangBerbeda();  } -abstract class MyAbstractClass implements InterfaceOne +abstract class KelasAbstrakSaya implements InterfaceSatu  { -    public $x = 'doSomething'; +    public $x = 'kerjakanSesuatu';  } -class MyConcreteClass extends MyAbstractClass implements InterfaceTwo +class KelasKongkritSaya extends KelasAbstrakSaya implements InterfaceTwo  { -    public function doSomething() +    public function kerjakanSesuatu()      {          echo $x;      } -    public function doSomethingElse() +    public function kerjakanYangLain()      { -        echo 'doSomethingElse'; +        echo 'kerjakanYangLain';      }  } - -// Classes can implement more than one interface -class SomeOtherClass implements InterfaceOne, InterfaceTwo +// Kelas dapat diimplementasikan pada banyak interface +class KelasLainnya implements InterfaceSatu, InterfaceDua  { -    public function doSomething() +    public function kerjakanSesuatu()      { -        echo 'doSomething'; +        echo 'kerjakanSesuatu';      } -    public function doSomethingElse() +    public function kerjakanYangLain()      { -        echo 'doSomethingElse'; +        echo 'kerjakanYangLain';      }  }  /******************************** - * Traits + * Sifat (Traits)   */ -// Traits are available from PHP 5.4.0 and are declared using "trait" +// Traits mulai tersedia sejak PHP 5.4.0 dan dideklarasikan menggunakan kata kunci "trait" -trait MyTrait +trait TraitSaya  { -    public function myTraitMethod() +    public function methodTraitSaya()      { -        print 'I have MyTrait'; +        print 'Saya menggunakan Trait';      }  } -class MyTraitfulClass +class KelasTraitSaya  { -    use MyTrait; +    use TraitSaya;  } -$cls = new MyTraitfulClass(); -$cls->myTraitMethod(); // Prints "I have MyTrait" +$kls = new KelasTraitSaya(); +$kls->methodTraitSaya();    // menampilkan "Saya menggunakan Trait"  /********************************   * Namespaces   */ -// This section is separate, because a namespace declaration -// must be the first statement in a file. Let's pretend that is not the case +// Bagian ini telah dibatasi, karena deklarasi "namespace" +// karena harus ditempatkan diawal dokumen.  <?php -// By default, classes exist in the global namespace, and can -// be explicitly called with a backslash. - -$cls = new \MyClass(); +// Secara default, kelas tersedia sebagai namespace umum, dan dapat +// secara khusus dipanggil dengan garis-miring terbalik (backslash). +$kls = new \KelasSaya(); -// Set the namespace for a file -namespace My\Namespace; +// Menentukan namespace untuk sebuah dokumen +namespace Saya\Namespace; -class MyClass +class KelasSaya  {  } -// (from another file) -$cls = new My\Namespace\MyClass; +// (dari dokumen lainnya) +$kls = new Saya\Namespace\KelasSaya; -//Or from within another namespace. -namespace My\Other\Namespace; +// Atau dari dalam namespace lainnya. +namespace Saya\Lainnya\Namespace; -use My\Namespace\MyClass; +use Saya\Namespace\KelasSaya; -$cls = new MyClass(); +$kls = new KelasSaya(); -// Or you can alias the namespace; +// Namespace dapat menggunakan alias -namespace My\Other\Namespace; +namespace Saya\Lainnya\Namespace; -use My\Namespace as SomeOtherNamespace; +use Saya\Namespace as SuatuKelasLainnya; -$cls = new SomeOtherNamespace\MyClass(); +$kls = new SuatuKelasLainnya\KelasSaya();  /********************** @@ -735,34 +733,34 @@ $cls = new SomeOtherNamespace\MyClass();  *  */ -class ParentClass { -    public static function who() { -        echo "I'm a " . __CLASS__ . "\n"; +class KelasInduk { +    public static function siapa() { +        echo "Ini adalah " . __CLASS__ . "\n";      } -    public static function test() { -        // self references the class the method is defined within +    public static function coba() { +        // kata kunci "self" merujuk pada method yang berada dalam satu kelas          self::who(); -        // static references the class the method was invoked on +        // kata kunci "static" merujuk pada method yang berada di kelas dimana method itu dijalankan          static::who();      }  } -ParentClass::test(); +KelasInduk::coba();  /* -I'm a ParentClass -I'm a ParentClass +Ini adalah KelasInduk +Ini adalah KelasInduk  */ -class ChildClass extends ParentClass { -    public static function who() { -        echo "But I'm " . __CLASS__ . "\n"; +class KelasAnak extends KelasInduk { +    public static function siapa() { +        echo "Tapi ini adalah " . __CLASS__ . "\n";      }  } -ChildClass::test(); +KelasAnak::tes();  /* -I'm a ParentClass -But I'm ChildClass +Ini adalah KelasInduk +Tapi ini adalah KelasAnak  */  /********************** @@ -770,82 +768,81 @@ But I'm ChildClass  *    */ -// Get current class name. Must be used inside a class declaration. -echo "Current class name is " . __CLASS__; +// Mendapatkan nama dari suatu kelas. Harus dideklarasikan didalam kelas tersebut. +echo "Nama kelas ini adalah " . __CLASS__; -// Get full path directory of a file -echo "Current directory is " . __DIR__; +// Mendapatkan alamat lengkap direktori +echo "Alamat direktori ini adalah " . __DIR__; -    // Typical usage +    // Beberapa yang banyak digunakan      require __DIR__ . '/vendor/autoload.php'; -// Get full path of a file -echo "Current file path is " . __FILE__; +// Mendapatkan alamat lengkap dokumen +echo "Alamat dokumen ini adalah " . __FILE__; -// Get current function name -echo "Current function name is " . __FUNCTION__; +// Mendapatkan nama fungsi +echo "Nama fungsi ini adalah " . __FUNCTION__; -// Get current line number -echo "Current line number is " . __LINE__; +// Mendapatkan nomor baris perintah +echo "Nomor baris perintah ini adalah " . __LINE__; -// Get the name of the current method. Only returns a value when used inside a trait or object declaration. -echo "Current method is " . __METHOD__; +// Mendapatkan nama method. Hanya mengembalikan sebuah nilai jika berada didalam trait atau deklarasi objek. +echo "Nama method ini adalah " . __METHOD__; -// Get the name of the current namespace -echo "Current namespace is " . __NAMESPACE__; +// Mendapatkan nama namespace  +echo "Namespace saat ini adalah " . __NAMESPACE__; -// Get the name of the current trait. Only returns a value when used inside a trait or object declaration. -echo "Current namespace is " . __TRAIT__; +// Mendapatkan nama dari trait. Hanya mengembalikan sebuah nilai jika berada didalam trait atau deklarasi objek. +echo "Namespace saat ini adalah " . __TRAIT__;  /********************** -*  Error Handling +*  Penanganan Kesalahan (Error)  *    */ -// Simple error handling can be done with try catch block +// Penanganan error sederhana menggunakan "try...catch"  try { -    // Do something +    // Kerjakan sesuatu  } catch (Exception $e) { -    // Handle exception +    // Penanganan exception  } -// When using try catch blocks in a namespaced enviroment use the following +// Menggunakan "try...catch" blok pada namespace  try { -    // Do something +    // Kerjakan sesuatu  } catch (\Exception $e) { -    // Handle exception +    // Penanganan exception  } -// Custom exceptions +// Exception khusus -class MyException extends Exception {} +class ExceptionSaya extends Exception {}  try { -    $condition = true; +    $kondisi = true; -    if ($condition) { -        throw new MyException('Something just happend'); +    if ($kondisi) { +        throw new ExceptionSaya('Terjadi sesuatu');      } -} catch (MyException $e) { -    // Handle my exception +} catch (ExceptionSaya $e) { +    // Penanganan untuk exception khusus  }  ``` -## More Information +## Informasi lainnya -Visit the [official PHP documentation](http://www.php.net/manual/) for reference -and community input. +Kunjungi [Dokumentasi resmi PHP](http://www.php.net/manual/) untuk referensi dan masukan komunitas. -If you're interested in up-to-date best practices, visit +Jika anda tertarik untuk belajar lebih dalam, kunjungi   [PHP The Right Way](http://www.phptherightway.com/). -If you're coming from a language with good package management, check out +Jika anda terbiasa dengan manajemen paket, kunjungi  [Composer](http://getcomposer.org/). -For common standards, visit the PHP Framework Interoperability Group's +Untuk standar umum, kunjungi PHP Framework Interoperability Group's  [PSR standards](https://github.com/php-fig/fig-standards). | 
