12 * obtain it through the world-wide-web, please send an email |
12 * obtain it through the world-wide-web, please send an email |
13 * to license@zend.com so we can send you a copy immediately. |
13 * to license@zend.com so we can send you a copy immediately. |
14 * |
14 * |
15 * @category Zend |
15 * @category Zend |
16 * @package Zend_Translate |
16 * @package Zend_Translate |
17 * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) |
17 * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) |
18 * @version $Id: Tbx.php 20096 2010-01-06 02:05:09Z bkarwin $ |
18 * @version $Id: Tbx.php 24649 2012-02-26 03:37:54Z adamlundrigan $ |
19 * @license http://framework.zend.com/license/new-bsd New BSD License |
19 * @license http://framework.zend.com/license/new-bsd New BSD License |
20 */ |
20 */ |
21 |
21 |
22 |
22 |
23 /** Zend_Locale */ |
23 /** Zend_Locale */ |
28 |
28 |
29 |
29 |
30 /** |
30 /** |
31 * @category Zend |
31 * @category Zend |
32 * @package Zend_Translate |
32 * @package Zend_Translate |
33 * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) |
33 * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) |
34 * @license http://framework.zend.com/license/new-bsd New BSD License |
34 * @license http://framework.zend.com/license/new-bsd New BSD License |
35 */ |
35 */ |
36 class Zend_Translate_Adapter_Tbx extends Zend_Translate_Adapter { |
36 class Zend_Translate_Adapter_Tbx extends Zend_Translate_Adapter { |
37 // Internal variables |
37 // Internal variables |
38 private $_file = false; |
38 private $_file = false; |
67 xml_parser_set_option($this->_file, XML_OPTION_CASE_FOLDING, 0); |
67 xml_parser_set_option($this->_file, XML_OPTION_CASE_FOLDING, 0); |
68 xml_set_element_handler($this->_file, "_startElement", "_endElement"); |
68 xml_set_element_handler($this->_file, "_startElement", "_endElement"); |
69 xml_set_character_data_handler($this->_file, "_contentElement"); |
69 xml_set_character_data_handler($this->_file, "_contentElement"); |
70 |
70 |
71 if (!xml_parse($this->_file, file_get_contents($filename))) { |
71 if (!xml_parse($this->_file, file_get_contents($filename))) { |
72 $ex = sprintf('XML error: %s at line %d', |
72 $ex = sprintf('XML error: %s at line %d of file %s', |
73 xml_error_string(xml_get_error_code($this->_file)), |
73 xml_error_string(xml_get_error_code($this->_file)), |
74 xml_get_current_line_number($this->_file)); |
74 xml_get_current_line_number($this->_file), |
|
75 $filename); |
75 xml_parser_free($this->_file); |
76 xml_parser_free($this->_file); |
76 require_once 'Zend/Translate/Exception.php'; |
77 require_once 'Zend/Translate/Exception.php'; |
77 throw new Zend_Translate_Exception($ex); |
78 throw new Zend_Translate_Exception($ex); |
78 } |
79 } |
79 |
80 |