{"id":50085,"date":"2024-09-30T16:59:56","date_gmt":"2024-09-30T09:59:56","guid":{"rendered":"https:\/\/www.rumahweb.com\/journal\/?p=50085"},"modified":"2024-10-01T09:36:53","modified_gmt":"2024-10-01T02:36:53","slug":"belajar-php-dasar-10","status":"publish","type":"post","link":"https:\/\/www.rumahweb.com\/journal\/belajar-php-dasar-10\/","title":{"rendered":"Belajar PHP Dasar Bagian 10: Mengenal Class dan Object PHP"},"content":{"rendered":"\n<p>Pada seri belajar PHP dasar bagian ke-9, kita telah mempelajari <a href=\"https:\/\/www.rumahweb.com\/journal\/belajar-php-dasar-9\/\" target=\"_blank\" rel=\"noopener\" title=\"\">struktur dasar OOP<\/a> yang digunakan untuk mengklasifikasikan data dan mengubahnya menjadi objek. Di bagian ini, kita akan melanjutkan belajar PHP dasar dengan mengenal lebih dalam konsep <em>class <\/em>dan <em>object <\/em>tersebut.<\/p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Apa itu <em>class <\/em>pada OOP?<\/h2>\n\n\n\n<p><em>Class <\/em>dalam PHP adalah sebuah template atau cetakan untuk membuat objek yang bisa mendefinisikan properti (<em>variable<\/em>) dan <em>method<\/em> (<em>function<\/em>) yang menggambarkan perilaku dan karakteristik dari objek yang akan dibuat.<\/p>\n\n\n\n<p>Dengan menggunakan <em>class<\/em>, kita bisa menciptakan banyak <em>object <\/em>yang berbeda, tetapi semuanya akan memiliki struktur yang sama. <em>Class <\/em>membantu kita mengorganisir kode dengan lebih baik dan membuat program lebih mudah dikelola.<\/p>\n\n\n\n<p>Untuk menggunakan sebuah class, kita perlu membuat objek dari class tersebut dalam <em>script <\/em>PHP. Objek yang dihasilkan akan memiliki semua properti dan metode yang ada di dalam class. Dalam OOP <a href=\"https:\/\/blog.rumahweb.com\/php-adalah\/\" target=\"_blank\" rel=\"noopener\" title=\"php adalah\">PHP<\/a>, penulisan class dimulai dengan kata kunci class, diikuti oleh nama <em>class<\/em>-nya.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Contoh penulisan <em>Class <\/em>pada PHP<\/h2>\n\n\n\n<p>Berikut adalah contoh sederhana penulisan <em>class <\/em>pada PHP.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\tclass apel{\n\t\t\/\/isi dari class yang bernama apel\n\t}\n?&gt;<\/code><\/pre>\n\n\n\n<p>Di dalam <em>class<\/em>, terdapat properti yang perlu dideklarasikan. Properti biasanya dibuat berdasarkan sifat atau jenis, atau definisi dari class tersebut. <\/p>\n\n\n\n<p>Pada contoh penulisan <em>class<\/em> di atas, kita telah mendeklarasikan sebuah <em>class<\/em> bernama apel. Properti dari apel bisa kita misalkan jenis-jenis apel, merk apel, atau dimana apel itu berasal, atau ukuranya.<\/p>\n\n\n\n<p>Contoh penulisan properti di dalam <em>class<\/em>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\tclass apel  {\n\t\t\/\/properti dari apel \n\t\tvar $jenis;\n\t\tvar $warna;\n\t\tvar $asal;\n\t}\n?&gt;<\/code><\/pre>\n\n\n\n<p>Selain properti, terdapat <em>method <\/em>untuk menerapkan suatu proses yang akan dijalankan untuk properti yang sudah dibuat. Pada buah apel, proses yang bisa kita lakukan seperti mengupas apel, atau memotong apel, atau memakan apel. <\/p>\n\n\n\n<p>Method tersebut kita buat seperti membuat sebuah fungsi, bedanya dengan fungsi biasa, method dibuat di dalam sebuah class. Contoh penulisan method di dalam class :&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\tclass apel {\n\t\t\/\/properti dari apel\n\t\tvar $jenis;\n\t\tvar $warna;\n\t\tvar $asal;\n\t\t\n\t\tfunction kupas(){\n\t\t\t\/\/isi method kupas\n\t\t}\n\t\t\n\t\tfunction potong(){\n\t\t\t\/\/isi method potong\n\t\t}\n\t\t\n\t\tfunction makan(){\n\t\t\t\/\/isi method makan\n\t\t}\n\t}\n?&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Apa itu <em>Object <\/em>pada OOP?<\/h2>\n\n\n\n<p>Jika <em>class <\/em>adalah templatenya, maka <em>object <\/em>digunakan untuk mencetak hasil template yang sudah dibuat. Cara mendeklarasikan <em>object <\/em>seperti mendeklarasikan sebuah variable, hanya saja isi variable tersebut adalah <em>class <\/em>yang ingin dipanggil.<\/p>\n\n\n\n<p>Contoh membuat object pada OOP PHP.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$apelfuji = new apel();<\/code><\/pre>\n\n\n\n<p>Dari script diatas, kita telah mendeklarasikan <em>object <\/em>dengan nama apelfuji, dimana <em>object <\/em>apelfuji dapat memanggil <em>class <\/em>apel yang telah kita buat sebelumnya.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Penerapan OOP <em>Class <\/em>dan <em>Object<\/em><\/h2>\n\n\n\n<p>Sekarang kita sudah memahami apa itu <em>class<\/em> dan <em>object<\/em>, serta cara membuatnya. Selanjutnya, kita akan mengembangkannya untuk skenario nyata. Untuk itu, kita perlu menambahkan <em>method<\/em> seperti di bawah ini agar properti dapat digunakan sebagai variabel data dalam <em>class<\/em>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function bungkus($jenis,$warna,$asal){\n\t$this-&gt;jenis = $jenis;\n\t$this-&gt;warna = $warna;\n\t$this-&gt;asal = $asal;\n\techo \"apel sudah dibungkus !!&lt;br&gt;&lt;br&gt;\";\n}<\/code><\/pre>\n\n\n\n<p>Script di atas digunakan untuk menyimpan setiap variabel yang dimasukkan saat <em>method<\/em> <code>bungkus<\/code> dipanggil. Dengan menyimpan variabel ke dalam properti <code>jenis<\/code>, <code>warna<\/code>, dan <code>asal<\/code> menggunakan <code>$this-&gt;<\/code>, data tersebut dapat digunakan di <em>method<\/em> lain.<\/p>\n\n\n\n<p>Setelah itu, tambahkan <em>script method<\/em> sebelumnya dengan kode berikut:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function kupas(){\n\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dikupas&lt;br&gt;\";\n\t\t\t\t\n\t} else {\n\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t}\n}\n\nfunction potong(){\n\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dipotong&lt;br&gt;\";\n\t} else {\n\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t}\n}\n\t\t\nfunction makan(){\n\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dimakan&lt;br&gt;\";\n\t} else {\n\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t}\n}<\/code><\/pre>\n\n\n\n<p>Dengan demikian, <em>class <\/em>sudah memiliki properti dan <em>method <\/em>yang siap digunakan. Sekarang, kita akan membuat objek untuk memanggil <em>class <\/em>tersebut dan menjalankan <em>method<\/em>&#8211;<em>method <\/em>yang telah kita buat. Tambahkan <em>script <\/em>berikut di bagian paling bawah:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$apelfuji = new apel();\n$apelfuji-&gt;bungkus(\"Fuji\",\"Merah\",\"Jepang\");\n$apelfuji-&gt;kupas();\n$apelfuji-&gt;potong();\n$apelfuji-&gt;makan();\necho \"&lt;br&gt;&lt;hr&gt;&lt;br&gt;\";\t\n$apelmalang = new apel();\n$apelmalang-&gt;bungkus(\"Malang\",\"Hijau\",\"Malang\");\n$apelmalang-&gt;kupas();\n$apelmalang-&gt;potong();\n$apelmalang-&gt;makan();\n<\/code><\/pre>\n\n\n\n<p>Sehingga script penuhnya akan menjadi seperti ini :&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\tclass apel{\n\t\t\/\/properti dari apel\n\t\tvar $jenis;\n\t\tvar $warna;\n\t\tvar $asal;\n\t\t\n\t\tfunction bungkus($jenis,$warna,$asal){\n\t\t\t$this-&gt;jenis = $jenis;\n\t\t\t$this-&gt;warna = $warna;\n\t\t\t$this-&gt;asal = $asal;\n\t\t\techo \"apel sudah dibungkus !!&lt;br&gt;&lt;br&gt;\";\n\t\t}\n\t\t\n\t\tfunction kupas(){\n\t\t\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\t\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dikupas&lt;br&gt;\";\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t\t\t}\n\t\t}\n\t\t\n\t\tfunction potong(){\n\t\t\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\t\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dipotong&lt;br&gt;\";\n\t\t\t} else {\n\t\t\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t\t\t}\n\t\t}\n\t\t\n\t\tfunction makan(){\n\t\t\tif(!empty($this-&gt;jenis)&amp;&amp;!empty($this-&gt;warna)&amp;&amp;!empty($this-&gt;asal)){\n\t\t\t\techo \"Apel \".$this-&gt;jenis.\" dengan warna \".$this-&gt;warna.\" dan asal \".$this-&gt;asal.\" Telah dimakan&lt;br&gt;\";\n\t\t\t} else {\n\t\t\t\techo \"Belum ada apel dibungkus&lt;br&gt;\";\n\t\t\t}\n\t\t}\n\t}\n\t\n\t$apelfuji = new apel();\n\t$apelfuji-&gt;bungkus(\"Fuji\",\"Merah\",\"Jepang\");\n\t$apelfuji-&gt;kupas();\n\t$apelfuji-&gt;potong();\n\t$apelfuji-&gt;makan();\n\techo \"&lt;br&gt;&lt;hr&gt;&lt;br&gt;\";\n\t$apelmalang = new apel();\n\t$apelmalang-&gt;bungkus(\"Malang\",\"Hijau\",\"Malang\");\n\t$apelmalang-&gt;kupas();\n\t$apelmalang-&gt;potong();\n\t$apelmalang-&gt;makan();\n?&gt;<\/code><\/pre>\n\n\n\n<p>Ketika script diatas dieksekusi, maka halamannya akan menampilkan data seperti berikut: <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"671\" height=\"419\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1.jpg\" alt=\"Hasil penerapan class dan object pada pemrograman OOP PHP\" class=\"wp-image-50086\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1.jpg 671w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1-300x187.jpg 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1-370x231.jpg 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1-270x169.jpg 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/1-570x356.jpg 570w\" sizes=\"auto, (max-width: 671px) 100vw, 671px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Kesimpulan<\/h2>\n\n\n\n<p>Memahami <em>class<\/em> dan <em>object<\/em> adalah dasar penting dalam pemrograman berbasis OOP. Dengan menerapkannya dengan baik, kita bisa lebih mudah menggunakan <em>class<\/em> tersebut hanya dengan memanggilnya melalui objek, sehingga dapat menghemat waktu dan membuat pengembangan website lebih efisien.<\/p>\n\n\n\n<p>Demikian series belajar PHP dasar bagian 10 yang menjelaskan tentang apa class dan object pada pemrograman OOP PHP. Selanjutnya, Anda dapat belajar <strong><a href=\"https:\/\/www.rumahweb.com\/journal\/belajar-php-dasar-11\/\" target=\"_blank\" rel=\"noopener\" title=\"belajar php dasar \">PHP dasar bagian 11<\/a><\/strong> yang membahas tentang <em>construct<\/em> dan <em>destruct <\/em>PHP. Semoga bermanfaat.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada seri belajar PHP dasar bagian ke-9, kita telah mempelajari struktur dasar OOP yang digunakan untuk mengklasifikasikan data dan mengubahnya menjadi objek. Di bagian ini, kita akan melanjutkan belajar PHP dasar dengan mengenal lebih dalam konsep class dan object tersebut. Apa itu class pada OOP? Class dalam PHP adalah sebuah template atau cetakan untuk membuat [&hellip;]<\/p>\n","protected":false},"author":352,"featured_media":50481,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[1749,45,2177],"class_list":{"0":"post-50085","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-web-programming","8":"tag-belajar-php","9":"tag-php","10":"tag-php-dasar"},"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2024\/09\/belajar-php-dasar-bagian-10.png","jetpack_shortlink":"https:\/\/wp.me\/p8n3G7-d1P","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/50085","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/users\/352"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/comments?post=50085"}],"version-history":[{"count":0,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/50085\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media\/50481"}],"wp:attachment":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media?parent=50085"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/categories?post=50085"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/tags?post=50085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}