파일에 내용을 쓸 때 탭 구분해서 작성하면 CSV 파일 등과 같은 곳에서 유용하게 사용할 수 있습니다.


 <?php 
 function write_tabbed_file($filepath$array
                                          $save_keys=false
 { 
    
$content ''
  
    
reset($array); 
    while(list(
$key$val) = each($array)) 
    { 
        
// replace tabs in keys and values to [space] 
        
$key str_replace("\t"" "$key); 
        
$val str_replace("\t"" "$val); 
  
        if (
$save_keys){ $content .=  $key."\t"; } 
  
        
// create line: 
        
$content .= (is_array($val)) ? 
implode("\t"$val) : $val
        
$content .= "\n"
    } 
  
    if (
file_exists($filepath) && !is_writeable($filepath)) 
    {  
        return 
false
    } 
    if (
$fp fopen($filepath'w+')) 
    { 
        
fwrite($fp$content); 
        
fclose($fp); 
    } 
    else { return 
false; } 
    return 
true
 } 
  
 // 
 // load a tab seperated text file as array 
 // 
 function load_tabbed_file($filepath$load_keys=false
 { 
    
$array = array(); 
  
    if (!
file_exists($filepath)){ return $array; } 
    
$content file($filepath); 
  
    for (
$x=0$x count($content); $x++) 
    { 
        if (
trim($content[$x]) != ''
        { 
            
$line explode("\t"trim($content[$x])); 
            if (
$load_keys
            { 
                
$key array_shift($line); 
                
$array[$key] = $line
            } 
            else { 
$array[] = $line; } 
        } 
    } 
    return 
$array
 } 
  
 /* 
 ** Example usage: 
 */ 
  
 $array = array( 
    
'line1'  => array('data-1-1''data-1-2''data-1-3'), 
    
'line2' => array('data-2-1''data-2-2''data-2-3'), 
    
'line3'  => array('data-3-1''data-3-2''data-3-3'), 
    
'line4' => 'foobar'
    
'line5' => 'hello world' 
 ); 
  
 // save the array to the data.txt file: 
 write_tabbed_file('data.txt'$arraytrue); 
  
 /* the data.txt content looks like this: 
 line1    data-1-1    data-1-2    data-1-3 
 line2    data-2-1    data-2-2    data-2-3 
 line3    data-3-1    data-3-2    data-3-3 
 line4    foobar 
 line5    hello world 
 */ 
  
 // load the saved array: 
 $reloaded_array load_tabbed_file('data.txt',true); 
  
 print_r($reloaded_array); 
 // returns the array from above 
 ?>

출처: http://www.jonasjohn.de/snippets/php/read-and-write-tab-files.htm