Pada kesempatan kali ini kita akan membahas cara untuk menggabungkan kata/string, teks maupun kalimat dengan PHP. Pembahasan mencakup penggabungan string/kata dengan string, string dengan bentuk lain seperti variabel, array, function, dll serta disinggung sedikit mengenai penggabungan string yang ada di dalam array.
1. Menggunakan titik (.)
Dalam PHP, titik atau dot dapat digunakan untuk menggabungkan:
- string dengan string.
- string dengan variabel.
- string dengan fungsi.
Contoh:
<?php
// Antar string
echo 'Menggabungkan Kata ' . ' atau kalimat dengan PHP';
echo 'Hari Jum\'at ' . " atau Jum\"at? "; // Terdapat tanda ' atau " pada string
echo "Hari Jum'at " . ' atau Jum"at? '; // Terdapat tanda ' atau " pada string
// String dengan variabel
$nama = 'agusph';
$alamat = 'Solo';
echo 'Nama ' . $nama . ', alamat ' . $alamat; // Dengan satu tanda kutip
echo "Nama $nama, alamat $alamat"; // Dengan dua tanda kutip
// String dengan fungsi
function totalHarga($qty)
{
return 5000 * $qty;
}
$nama = 'Fulan';
echo strtoupper($nama) . ' membeli barang dengan biaya ' . totalHarga(10);
disamping contoh diatas, terdapat cara lain untuk menggabungkan string dengan fungsi yaitu terlebih dahulu menyimpan nama fungsi kedalam variabel. contoh:
<?php
// String dengan fungsi
function totalHarga($qty)
{
return 5000 * $qty;
}
$nama = 'Fulan';
$fungsi1 = 'strtoupper';
$fungsi2 = 'totalHarga';
echo "{$fungsi1($nama)} membeli sejumlah barang dengan total harga {$fungsi2(10)}";
contoh diatas menghasilkan output FULAN membeli sejumlah barang dengan total harga 50000
2. Menggunakan titik diikuti sama dengan (.=)
Cara lain untuk menggabungkan string yaitu dengan menggunakan tanda .=
contoh:
<?php
$bulan_arr = array('1'=>'Januari',
'Februari',
'Maret' ,
'April' ,
'Mei',
'Juni',
'Juli',
'Agustus',
'September',
'Oktober',
'November',
'Desember'
);
$nama_bulan = '';
foreach ($bulan_arr as $bulan) {
$nama_bulan .= $bulan . ', ';
}
echo $nama_bulan;
contoh diatas akan menghasilkan output: Januari, Februari, Maret, April, Mei, Juni, Juli, Agustus, September, Oktober, November, Desember, Perhatikan baris 16, pada baris tersebut kita definisikan variabel $nama_bulan, jika tidak maka akan muncul pesan Notice: Undefined variable: nama_bulan in E:\xampp-1.8.3.2\htdocs\tutorial\string2.php on line 18 hal tersebut terjadi karena ketika PHP menjalankan .=
(pada line 18) , PHP akan mencari variabel $nama_bulan untuk digabungkan nilainya, yang jika tidak ditemukan akan muncul pesan peringatan.
Pesan peringatan tersebut dapat dihilangkan dengan menambahkan tanda @ sehingga baris 18 menjadi @$nama_bulan .= $bulan . ', ';
namun sebaiknya sebisa mungkin hindari cara tersebut karena
- Menurut saya pribadi bukan praktek yang baik, karena orang lain yang membaca kode kita tidak akan tahu error apa yang terjadi jika tidak ada tanda tersebut.
- Walaupun menggunakan
@
Error / Notice sebenarnya masih ada, namun disembunyikan. Error / Notice ini menyebabkan waktu eksekusi program lebih lama. - Daripada menggunakan
@
lebih baik menggunakan perintaherror_reporting(E_ALL & ~E_NOTICE)
Contoh lain penggunaan .=
adalah ketika menuliskan perintah SQL yang melibatkan variabel dinamis, contoh dibawah diasumsikan variabel $range
bersifat dinamis, diperoleh ketika user mengklik submit pada form.
<?php
$range = array ('01', '02', '03'); // Bulan Januari, Februari dan Maret
$sql = 'SELECT * FROM sales WHERE ';
foreach ($range as $bulan) {
$sql .= 'bulan = "'.$bulan.'" OR ';
}
$sql = trim($sql, 'OR ');
echo $sql;
contoh diatas akan menghasilkan output: SELECT * FROM sales WHERE bulan = “01” OR bulan = “02” OR bulan = “03”
3. Menggabungkan string yang ada di dalam array
Penggabungan antar string/kata yang ada di dalam array dapat dilakukan dengan menggunakan fungsi implode
atau join
. Agar tidak terlalu panjang dan tetap fokus, penggunaan kedua fungsi tersebut dibahas pada artikel tersendiri: Menggabungkan string/kata pada array dengan PHP
Demikian pembahasan mengenai penggabungan string atau kata dengan PHP, artikel berikut ini juga berkaitan dengan penggabungan string:
Subscibe Now
Suka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com
49 Feedback dari pembaca
echo ”.$x.”;
jika saya ingin menambahkan karakter titik dua (:) di depan $x pada value, gimana caranya ya mas?
Maksudnya echo “:$x” mas?
saya mau bertanya bagaimana cara mendapatkan nilai kemiripan antar kalimat. berapa nilai dari masing-masing kalimat . terimakasih
Secara singkat, dapat menggunakan fungsi similar_text(), levenshtein(), atau soundex() mas. Bahasa pemrograman susah mengikuti logika kemiripan pada akal manusia, namun demikian, bisa dicoba dengan membuat fungsi tersendiri sesuai dengan kondisi yang diinginkan.
saya punya kalimat dari 1,2,3,4,5,6,7,8,9,10
yang ingin saya tanyakan lagi itu , bagaimana cara agar 10 kalimat itu ditampilkan sebagai berikut :
1,2,3,4,5,6,7,8,9,10
1,3,4,5,6,7,8,9,10
1,4,5,6,7,8,9,10
1,5,6,7,8,9,10
dan seterusnya . terima kasih
Coba pakai ini mas:
Hasil:
Terimakasih mas nanti saya coba. Mungkin kalau ada hal yang ingin saya tanyakan lagi saya komen lagi. Terimakasih masukannya mas
2,3,4,5,6,7,8,9,10
2,4,5,6,7,8,9,10
2,5,6,7,8,9,10
2,6,7,8,9,10
2,7,8,9,10
2,8,9,10
2,9,10
2,10
2
dan seterusnya hingga :
9 10
10
berarti code yang perlu di perbaikin atau di tambahkan pada bagian “for” dan “if” nya ya mas ?
terimakasih
maaf sebelumnya banyak bertanya
Tidak apa apa mas, disini tempatnya diskusi
Maaf mas, yang dimaksud seperti apa ya mas? apa pertanyaannya belum lengkap?
sudah ketemu mas
maksud saya seperti ini :
2,3,4,5,6,7,8,9,10
2,4,5,6,7,8,9,10
2,5,6,7,8,9,10
2,6,7,8,9,10
2,7,8,9,10
2,8,9,10
2,9,10
2,10
tetapi kalau ingin membuat seperti ini :
2,3
2,4
2,5
2,6
2,7
2,8
2,9
2,10
pada bagian ini yang perlu ditambahkan code lagi mas “$len = count($arr); // hitung banyaknya array ”
Terimakasih.
Coba gunakan script ini mas:
sudah saya coba mas
jika ingin membuat seperti ini :
2 = 0,3 , 3 = 0,1
nilai rata-rata sudah ada . perlu tambahankan code baru lagi mas ?
maaf saya baru mendalami code php
terimakasih
saya jawab via email ya mas…
mas sy ingin melakukan eksport database ke excel
isi kolomnya seperti ni
cara meggabungkan ketiga kolom tersebut menjadi 1 kolom bagaiman mas
misalkan nanti hasilnya di kolom A isinya $dd, $mm, $yyyy
Saya kurang paham maksudnya mas? apakah yang dimaksud seperti ini?
Jika ingin menggabungkan beberapa fungsi menjadi satu gimana?
Misalnya seperti apa mas?
Kalau nested function tingga dimasukkan saja, misal strtoupper(substr($string, 2)) lebih jauh tentang fungsi Memahami Fungsi Pada PHP dan Cara Membuatnya
Mas saya mau tanya, gimana caranya saya upload file excel outputnya berbentuk json,
di button upload nya bagaimana ya, saya buta sekali mas php mohon pencerahannya terima kasih..
Intinya, upload file excel biasa mas, selanjutnya di server, baca file excel tersebut menggunakan PHP, untuk membacanya, bisa menggunakan berbagai library excel reader, selanjutnya buat datanya menjadi array, dari array tersebut ubah menjadi JSON menggunakan fungsi json_encode
Mas, saya kirim email, mohon bantuannya ya buat file terlampir, terima kasih..
Intinya, upload file excel biasa mas, selanjutnya di server, baca file excel tersebut menggunakan PHP, untuk membacanya, bisa menggunakan berbagai library excel reader, selanjutnya buat datanya menjadi array, dari array tersebut ubah menjadi JSON menggunakan fungsi json_encode
Intinya, upload file excel biasa mas, selanjutnya di server, baca file excel tersebut menggunakan PHP, untuk membacanya, bisa menggunakan berbagai library excel reader, selanjutnya buat datanya menjadi array, dari array tersebut ubah menjadi JSON menggunakan fungsi json_encode
mas, bisa jelasin kaga ? tentang dua kali syntax for di php tu dimana ?
ex : for ( $=a; $<=b; $++) {
for ( $=a; $<=b; $++)
yang seperti itu mas tolong jelasin detailnya mas
Yang for pertama untuk loop pertama mas, biasanya untuk membuat baris dan for kedua untuk membuat kolom. Setiap kali loop pertama dijalankan, lopp kedua akan dijalankan sampai selesai.
mas saya mau bertanya, kalau saya ada data seperti ini:
1,2
1,3
1,4
2,4
2,5
ingin dibuat seperti ini
1,2,3
1,2,4
1,3,4
2,4,5
bagaimana ya mas caranya?
terimakasih
Itu polanya seperti apa ya mas? kenapa tidak ada 1,3,5?
Yang penting dapet polanya dulu mas, selanjutnya tinggal kita terjemahkan ke script PHP
mas saya mau tanya, bisa ga ya kita buat date dari angka yg kita buat sendiri dan dijadiin tgl,bln,tahun? misal :
$tgl = ’02’;
$bulan= ’03’;
$thn= ‘2018’;
$gabung = $thn . ‘-‘ . $bln . ‘-‘ . $tgl;
$sql = mysqli_query($koneksi,”INSERT INTO tgl (tanggal) VALUES ($gabung) “) or die (mysqli_error($koneksi));
Bisa mas asal format tanggal nya benar: yyyy-mm-dd
Contoh di pertanyaannya sudah benar cuman kurang tanda kutip pada VALUES nya:
$sql = mysqli_query($koneksi,”INSERT INTO tgl (tanggal) VALUES (‘$gabung’)”)
mas ada referensi aplikasi dari suara menjadi teks
Belum ada mas
Terimakasih mas Agus tulisannya sangat membantu,
Semoga mas Agus tambah Sukses…
Aamiin terima kasih mas, sama sama ya mas….
mas nanya dong:
misal
$kode=$_POST[‘kode’];
$nama=$_POST[‘nama’];
ini kalau di gabung gimana mas, bisa ga pake $gabung=$kode,$nama;
mohon arahan nya mas….tks sukses terus mas….
Digabung pakai dot mas, misal:
$gabung = $kode . $nama;
ini kalau di gabung gimana mas?
ta_id”>. $value .-> nama .
Maksudnya bagaimana ya mas?
Mas saya punya script yg tampillan seperti ini
04:57:40 AM
Jum’at, 24 April 2020
nah saya ingin menggabungkan 2 baris itu menjadi satu baris, misal, 04:57:40 AM , Jum’at, 24 April 2020
pertanyaan saya bagaimana script php nya utk menggabungkan hasil menjadi 1 baris saja. Suwun
Itu ada cariage return disana mas, tinggal gunakan str_replace, misal str_replace(“\r\n”, ”, $sting)
Mas mau tanya kalo query untuk menggabungkan kata yang diawali kata tidak, contoh saya tidak sepakat menjadi saya tidaksepakat setiap ada kata tidak pasti menjadi satu kata mas mohon di bantu
Coba pakai fungsi str_replace() mas, misal:
str_replace(“tidak “, “tidak”, $text)
Itu yang sederhana sehingga tidak bekerja jika terdapat lebih dari satu spasi setelah kata tidak atau ada karakter lain seperti enter.
Untuk lebih akuratnya bisa coba pakai regex
php dasar membantu bgt
apakah ada contoh pak pengaplikasian bahasa php dalam pembuatan web
Contoh nya bisa digoogling mas, salah satunya CMS CMS berbasis PHP merupakan penerapan bahasa PHP pada Website
Halo pak Agus, saya mau bertanya. Jika saya punya coding seperti ini :
$hsl = array();
if ($resVal[‘rank’] == 1) {
$hsl[] = $resVal[‘rank’];
}
print_r($hsl);
dan hasil seperti ini :
// output :
Array ( [0] => 1 ) Array ( [0] => 1 )
gimana ya caranya memasukkan kedua nilai tersebut kedalam 1 variabel array?
menjadi seperti ini :
Array ( [0] => 1 [1] => 1 )
mohon bantuannya pak, terimakasih 🙂
Coba pakai fungsi array_merge mas…
permisi pak mau bertanya, bapak belajar logika php dasar referensinya dari mana? saya mau ikut belajar juga dari referensi yg pak agus pelajari. terima kasih
Belajarnya mengalir mas, sering sering membuat aplikasi, disana nanti banyak case yang memerlukan logika.
permisi pak mau tanya, referensi belajar logika php dasar dari mana ya pak?
Bisa coba dipelajari dengan logika if else mas.
Sebenarnya untuk melatih logika dapat dengan membangun aplikasi mas, nanti disana banyak ketemu case yang memerlukan logika.
Bisa juga dengan melatih dengan menggunakan perulangan untuk membuat pola tertentu seperti pada artikel: Memahami Perulangan For Pada PHP