59 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php	
 | |
| 
 | |
| 	// fileio.php
 | |
| 	// low-level io-handling functions
 | |
| 	
 | |
| 	function io_write_file($filename, $data) {
 | |
| 		@umask(0);
 | |
| 		$dir = dirname($filename);
 | |
| 		if (fs_mkdir($dir)) {
 | |
| 			$f = fopen($filename, "w");
 | |
| 			if ($f) {
 | |
| 			
 | |
| 				if (!flock($f, LOCK_EX))
 | |
| 					return -1;
 | |
| 			
 | |
| 				$length = strlen($data);
 | |
| 				$done = fwrite($f, $data);
 | |
| 				
 | |
| 				flock($f, LOCK_UN);
 | |
| 				
 | |
| 				fclose($f);
 | |
| 				
 | |
| 				@chmod($filename, FILE_PERMISSIONS);
 | |
| 				
 | |
| 				//returns true on success
 | |
| 
 | |
| 				return($length == $done);
 | |
| 			}
 | |
| 			
 | |
| 		}
 | |
| 		
 | |
| 		return false;
 | |
| 			
 | |
| 	}
 | |
| 	
 | |
| 	function io_load_file($filename) {
 | |
| 			
 | |
| 		if (file_exists($filename)) {
 | |
| 			if (function_exists('file_get_contents'))
 | |
| 				return file_get_contents($filename);
 | |
| 
 | |
| 			$f = fopen($filename, "r");
 | |
| 			if ($f) {
 | |
| 				if (!flock($f, LOCK_SH))
 | |
| 					return -1;
 | |
| 				$contents = fread($f, filesize($filename));
 | |
| 				flock($f, LOCK_UN);
 | |
| 				fclose($f);
 | |
| 			
 | |
| 				//returns contents as string on success
 | |
| 				return($contents);
 | |
| 			}
 | |
| 		} 
 | |
| 		//trigger_error("io_load_file: $filename does not exists", E_USER_ERROR);
 | |
| 		return false;
 | |
| 	}	
 | |
| 	
 | |
| 
 | 
