Cannot redeclare class..?

April 28, 2008

Tulisan kali ini ada hubungannya dengan masalah error di program soapku yang kemarin, dan inti permasalahan error itu adalah :

Cannot redeclare class…

Apakah penyebab error ini?

Program database managemen untuk wordpress itu, aku buat dengan menggunakan library Nusoap.php. Yang inti dari program saya ini adalah mempermudah user untuk mengirimkan data dari web A ke web B (yang sama2 memakai wordpress), tanpa perlu memikirkan dump database, export import (kaya orang dagang aja yah ? :) ),dll..Tinggal pilih data yang akan dikirim, dan..send, short and sweet :) .

Error yang kemarin terjadi, yang di tulisan saya sebelumnya dikatakan kalau hanya kurang huruf w. Mengapa w? Ok, error yang terjadi memang seperti di atas, yaitu cannot redeclare class yang artinya ada pemanggilan klas lebih dari satu kali, dan memang sesuai dengan aturan OOP PHP, penggunaan/pemanggilan klas hanya bisa di lakukan max.1 kali. Class apa yang saya panggil? yaitu soapclient . Bagi yang terbiasa bermain dengan web services pasti tahu mengenai class ini dari library nusoap.

Nah yang menjadi masalah adalah, ternyata di PHP min.versi 5.2, sudah library class soapclient tersebut, jadi server akan menganggap pemanggilan class soapclient ini dilakukan sebanyak dua kali, dan terjadilah error seperti di atas. Saya juga malah baru tahu kalau ternyata di php min.versi 5.2 ternyata sudah ada penggunaan soapclient (terintegrasi intern).

Bagaimana cara mengatasi error ini? Cukup direname aja class yang kita panggil dari library nusoap. Kalau kita hendak (halah) memanggil/memakai class soapclient, maka seluruh kata soapclient di library nusoap harus diganti, dan di kasus ini saya menambahkan huruf w. Yang sebenarnya mo diganti katanya juga boleh kok. Tapi inget, harus diganti juga ‘daleman’ class tersebut. Kalau misalnya di dalam class tersebut terdapat 10 function dimana masing2nya memakai kata soapclient, ya harus diganti semua dengan kata yang sama.

Contoh :

class mysoap client extends …… {

                  function abc ….. {

                            blablabla….mysoapclient

                 }

}

Contoh di atas adalah cara menangani error yang dikarenakan dua kali pemanggilan class. Simpel banget kan? cukup direname, udah rampung. Walaupun simpel, sempet begadang juga kemarin di tempatnya mas isnaini, hiks, dasar newbie :( .

Entry Filed under: My Project Program. Tags: , , , , , .

2 Comments Add your own

  • 1. reconciler  |  May 4, 2008 at 1:35 am

    Weks~ kox aq gk ngerti oop di php y,susah bgt… dulu mas ini,blajarnya gmana seh?… trims. salam hangat dr sini.

  • 2. Mochamad Ramadhan Sjamsan&hellip  |  July 22, 2008 at 8:29 am

    Untuk OOP, kembalilah ke Java dan .Net anakq.. wkwkwkwkkw

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


Asalbaca aja

ObrolanSantai

JoinCommunity

Kata2Waton

a

GudangTulisan

Blogroll

FEEdMe

GakPenting

Blog Stats