71 行
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			71 行
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * CodeIgniter
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * An open source application development framework for PHP 5.1.6 or newer
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * @package		CodeIgniter
							 | 
						||
| 
								 | 
							
								 * @author		ExpressionEngine Dev Team
							 | 
						||
| 
								 | 
							
								 * @copyright	Copyright (c) 2008 - 2011, EllisLab, Inc.
							 | 
						||
| 
								 | 
							
								 * @license		http://codeigniter.com/user_guide/license.html
							 | 
						||
| 
								 | 
							
								 * @link		http://codeigniter.com
							 | 
						||
| 
								 | 
							
								 * @since		Version 1.0
							 | 
						||
| 
								 | 
							
								 * @filesource
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// ------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * CodeIgniter XML Helpers
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * @package		CodeIgniter
							 | 
						||
| 
								 | 
							
								 * @subpackage	Helpers
							 | 
						||
| 
								 | 
							
								 * @category	Helpers
							 | 
						||
| 
								 | 
							
								 * @author		ExpressionEngine Dev Team
							 | 
						||
| 
								 | 
							
								 * @link		http://codeigniter.com/user_guide/helpers/xml_helper.html
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// ------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * Convert Reserved XML characters to Entities
							 | 
						||
| 
								 | 
							
								 *
							 | 
						||
| 
								 | 
							
								 * @access	public
							 | 
						||
| 
								 | 
							
								 * @param	string
							 | 
						||
| 
								 | 
							
								 * @return	string
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								if ( ! function_exists('xml_convert'))
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									function xml_convert($str, $protect_all = FALSE)
							 | 
						||
| 
								 | 
							
									{
							 | 
						||
| 
								 | 
							
										$temp = '__TEMP_AMPERSANDS__';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										// Replace entities to temporary markers so that
							 | 
						||
| 
								 | 
							
										// ampersands won't get messed up
							 | 
						||
| 
								 | 
							
										$str = preg_replace("/&#(\d+);/", "$temp\\1;", $str);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										if ($protect_all === TRUE)
							 | 
						||
| 
								 | 
							
										{
							 | 
						||
| 
								 | 
							
											$str = preg_replace("/&(\w+);/",  "$temp\\1;", $str);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										$str = str_replace(array("&","<",">","\"", "'", "-"),
							 | 
						||
| 
								 | 
							
															array("&", "<", ">", """, "'", "-"),
							 | 
						||
| 
								 | 
							
															$str);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										// Decode the temp markers back to entities
							 | 
						||
| 
								 | 
							
										$str = preg_replace("/$temp(\d+);/","&#\\1;",$str);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										if ($protect_all === TRUE)
							 | 
						||
| 
								 | 
							
										{
							 | 
						||
| 
								 | 
							
											$str = preg_replace("/$temp(\w+);/","&\\1;", $str);
							 | 
						||
| 
								 | 
							
										}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										return $str;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// ------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/* End of file xml_helper.php */
							 | 
						||
| 
								 | 
							
								/* Location: ./system/helpers/xml_helper.php */
							 |