Langsung ke konten utama

implode ala PHP di C, Java, dan Visual Basic (VB6)


implode adalah salah satu fungsi bawaan PHP untuk mengubah/ menyatukan elemen-elemen array $pieces menjadi sebuah string. Dengan menggunakan fungsi implode ini kita juga bisa menentukan string penghubung atau $glue antar element-elemen array tersebut.

/**
 * @param string $glue - String yang menjadi penghubung antar element
 * @param string $pieces - array yang elemen-elemennya akan disatukan kedalam string
 * return string - Hasil penggabungan elemen-elemen pada $pieces
 */
implode($glue, array $pieces)

Fungsi ini sangat mudah digunakan dan berguna,
misal:
kita memiliki array $ternak
<?php
$ternak = array('sapi', 'ayam', 'kambing', 'kelinci');
$stringHasil = implode(', ', $ternak);
echo $stringHasil;
?>
akan menghasilkan tampilan seperti ini:
sapi, ayam, kambing, kelinci
Sayangnya di beberapa bahasa lain fungsi ini tidak tersedia, atau memiliki nama/ syntax yang berbeda, sehingga tidak diketahui keberadaannya. Meskipun cukup mudah dibuat tetapi sering kali malas untuk menulisnya, dan juga bagi beberapa programmer pemula mungkin agak kesulitan dalam membuat persamaan fungsi ini kedalam bahasa yang digunakannya, seperti C, Java, dan Visual Basic (VB6).

fungsi implode pada C

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char* implode(char* glue, char** pieces, int elementCount){
 int resultStringLength = 0;
 int elementStringLengths[elementCount];
 const glueLength = strlen(glue);
 int i = 0;
 int nextStringAdress = 0;
 for(i; i < elementCount; i++) {
  printf("%s\n", &(*(*pieces+nextStringAdress)));
  elementStringLengths[i] = strlen( &(*(*pieces + nextStringAdress)));
  nextStringAdress += elementStringLengths[i] + 1;
 }
 resultStringLength = nextStringAdress + elementCount - 1 + glueLength;

 char *concatenated = calloc(resultStringLength, sizeof(char));
 i = 0;
 nextStringAdress = 0;
 for(i; i < elementCount; i++){
  strncat(concatenated, &(*(*pieces+nextStringAdress)), elementStringLengths[i]);
  nextStringAdress += elementStringLengths[i] + 1;
  strncat(concatenated, glue, glueLength);
 }
 char *result = calloc(resultStringLength - glueLength, sizeof(char));
 memcpy(result, concatenated, resultStringLength - glueLength - 1);
 free(concatenated);
 return result;
}
Contoh penggunaan fungsi implode pada C:
char *ternak[] = {"sapi", "ayam", "kambing", "kelinci"};
char *stringHasil = implode(", ", ternak, 4);
printf("%s", stringHasil);

fungsi implode pada Java

public String implode(String glue, String[] pieces){
 StringBuilder buffer = new StringBuilder();
 // demi compability saya tidak menggunakan foreach (di Java ME tidak ada)
 for(int i = 0; i < pieces.length; i++){
  buffer.append(pieces[i]).append(glue);
 }
 if(buffer.length() > 0){
  buffer.setLength(buffer.length() - glue.length());
 }
 return buffer.toString();
}
Contoh penggunaan fungsi implode di Java:
String[] ternak = new String[]{"sapi", "ayam", "kambing", "kelinci"};
String stringHasil = implode(", ", ternak);
System.out.println(stringHasil);

fungsi implode pada Visual Basic (VB6)

Pada Visual Basic tidak perlu membuat fungsi baru, karena bawaannya telah terdapat fungsi Join yang memiliki kegunaan yang sama dengan fungsi implode di PHP
Syntax:
Function Join(SourceArray, [Delimiter]) As String
Contoh penggunaan fungsi Join pada Visual Basic (VB6):
Dim ternak(4) As String
dim stringHasil as String

ternak(0) = "sapi"
ternak(1) = "ayam"
ternak(2) = "kambing"
ternak(3) = "kelinci"

stringHasil = Join ternak, ", "

Komentar

Postingan populer dari blog ini

Contoh Pemprograman List, Animasi, dan Suara dengan Visual Basic - VB6

Sebenarnya saya agak malu nge- posting ini, karena low quality (✗_✗) banget. Tapi karena saya melihat ada beberapa teman yang kesulitan dalam mengerjakan tugas pemprograman Visual Basic (VB6) yang seperti ini, maka saya tebel-tebelin muka untuk posting disini sebagai contoh, siapa tahu bisa berguna. Tampilan Program Pemilihan objek dengan menggunakan list Pemilihan objek dengan meng-klik gambar binatang Latar Belakang Pembuatan Aplikasi ini dibuat sebagai pelaksaan dari tugas yang diberikan pada matakuliah Bahasa Pemprograman Visual 1 (Visual Basic 6) yang diajar oleh Bapak H. M. Amrin Lubis, Ir, M.Sc untuk mendemonstrasikan penggunaan List , Animasi dan Suara . Untuk lebih jelasnya, berikut ini adalah pernyataan tugas tersebut: Wajib: Buat sebuah daftar nama-nama hewan dalam list atau combo minimal 10 nama hewan. Ketik di- click salah satu nama hewan tersebut maka tampil gambarnya. Misal: di-klik kelinci tampil nama kelinci dan bahasa inggrisnya. Anjuran

Lirik lagu Keong Racun beserta terjemahannya inggris-nya (english translation)

Baca-baca komentar orang-orang bule tentang video Keong Racun-nya Sinta dan Jojo yang sempat jadi TT (Trending Topic) di Twitter selama beberapa hari kemarin, jadi pengen ketawa-ketawa sendiri (tapi ga jadi takut disangka gila). Ternyata rata-rata mereka ga ngerti apa istimewanya tu video. Menurut saya salah satu yang membuat video-nya menarik ya lagunya (disamping lipsinger-nya tentunya, terutama "Sinta", chow cwiiiit). Supaya lagunya lebih mudah dimengerti dan karena lagi kurang kerjaan ya saya buatlah terjemahan lagunya ke bahasa inggris dengan bahasa inggris versi saya (maksudnya versi pas-pasan cenderung kurang). Meskipun belom bener 100%, tapi yah lumayanlah dari pada ga ada. Keong Racun Penyanyi asli: Lissa Pencipta lagu: Abuy (Buy Akur) :Reff: Dasar kau keong racun Baru kenal eh ngajak tidur Ngomong nggak sopan santun Kau anggap aku ayam kampung Kau rayu diriku Kau goda diriku Kau colek diriku Hei ku takut sekali tanpa basa basi kamu ngajak happy