Pemrosesan File

Ahmad Faruq Faraby · Oct 17, 2012
$nama = 'test.txt';

    if(!file_exists($nama)){ 
        echo "<p>file $nama belum ada</p>";
        $fp=fopen("$nama","w"); 
        fputs($fp,'isi1'); 
        fclose($fp);    
        echo "<p>file $nama berhasil dibuat</p>";
    } else { 
        $fp=fopen("$nama","w"); 
        fputs($fp,'isi2'); 
        fclose($fp);    
        echo "<p>file $nama berhasil dibuat</p>";
    } 
    

gimana menuliskan data kedalam file yang isinya ditambah 1??
jika file "test.txt" belum ada maka bikin file "test.txt" dan menuliskan data "isinya1"
jika file "test.txt" sudah ada dan data dalam filenya "isinya1" maka menuliskan data "isinya2"
dan seterusnya menuliskan data "isinya3", "isinya4" dst...
Silahkan login untuk menjawab!
1
Loading...
Ellyx Christian · Oct 17, 2012 · 1 Suka · 0 Tidak Suka
$nama = 'test.txt';
 
    if(!file_exists($nama)){ 
        echo "<p>file $nama belum ada</p>";
        $fp=fopen("$nama","w"); 
        fputs($fp,'isi1'); 
        fclose($fp);    
        echo "<p>file $nama berhasil dibuat</p>";
    } else { 
	$isi = file_get_contents($nama);
        $fp=fopen("$nama","w");
        $angka = preg_replace('/^isi(\d+)$/','$1', $isi);
        fputs($fp,'isi'.($angka+1)); 
        fclose($fp);    
        echo "<p>file $nama berhasil dibuat</p>";
    }
1
Loading...
Ahmad Faruq Faraby · Oct 20, 2012 · 1 Suka · 0 Tidak Suka
masih bingung mas elliyx
saya lg belajar bikin smsgateway
maksud dari pertanyaan ini buat menambahkan modem lebih dari 1
di file gammurc isinya kan [gammu] klo ingin menambahkan modem kita harus menambah [gammu1],[gammu2] dst di file gammurc td
misal isi file gammurc :

[gammu] <-- ini otomatis
port = com1: <-- ini diinput dari textbox
connection = at115200 <-- ini diinput dari textbox
kalo script diatas gk ada masalah :)

nah, untuk menambahkan [gammu1] giman??
[gammu1] <--jika [gammu] sudah ada maka bikin [gammu1]
port = com2:
connection = at115200
1
Loading...
Ellyx Christian · Oct 20, 2012 · 1 Suka · 0 Tidak Suka
oh.. jadi seperti itu, berarti file gammurc adalah file dengan struktur ini file. Jadi perlu dibaca dengan fungsi parse_ini_file.
<?php
//fungsi untuk menulis ini file
function write_ini_file($assoc_arr, $path, $has_sections=FALSE) { 
    $content = ""; 
    if ($has_sections) { 
        foreach ($assoc_arr as $key=>$elem) { 
            $content .= "[".$key."]\n"; 
            foreach ($elem as $key2=>$elem2) { 
                if(is_array($elem2)) 
                { 
                    for($i=0;$i<count($elem2);$i++) 
                    { 
                        $content .= $key2."[] = \"".$elem2[$i]."\"\n"; 
                    } 
                } 
                else if($elem2=="") $content .= $key2." = \n"; 
                else $content .= $key2." = \"".$elem2."\"\n"; 
            } 
        } 
    } 
    else { 
        foreach ($assoc_arr as $key=>$elem) { 
            if(is_array($elem)) 
            { 
                for($i=0;$i<count($elem);$i++) 
                { 
                    $content .= $key2."[] = \"".$elem[$i]."\"\n"; 
                } 
            } 
            else if($elem=="") $content .= $key2." = \n"; 
            else $content .= $key2." = \"".$elem."\"\n"; 
        } 
    } 

    if (!$handle = fopen($path, 'w')) { 
        return false; 
    } 
    if (!fwrite($handle, $content)) { 
        return false; 
    } 
    fclose($handle); 
    return true; 
}
$nama = 'gammurc';
if(!file_exists($nama)){
	$content = array(
		'gammu' => array(
			'port' => 'com1:', //dari input text
			'connection' => 'at115200' //ambil dari input text
		)
	);
	write_ini_file($content, $nama, true);
}else{
	$content = parse_ini_file($name, true); //hasilnya berupa array
	end($content); // set pointer array ke element terakhir
	$key = key($content); //cari key element terakhir
	//gunakan regex untuk menenukan angka terakhir, misal gammu1 => 1
	$angka = (int) preg_replace('/^gammu(\d+)$/', '$1', $key);
	$newKey = 'gammu'.($angka+1);
	$content[$newKey] = array(
		'port' => 'com1:',//dari input text
		'connection' => 'at115200' //ambil dari input text
	);
	write_ini_file($content, $nama, true);
}
1
Loading...
Ahmad Faruq Faraby · Oct 20, 2012 · 1 Suka · 0 Tidak Suka
mantap mas ellyx
sekarang udah bisa
makasih bantuannya mas.... :)

minta link ato ebook buat belajar fungsi2 seperti diatas donk mas?? :P
1
Loading...
Ellyx Christian · Oct 20, 2012 · 1 Suka · 0 Tidak Suka
kalau fungsi2 php bisa dilihat di http://php.net