Changeset 21583 for branches/version-2_12-dev/data/class/util/SC_Utils.php
- Timestamp:
- 2012/03/04 04:46:21 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_12-dev/data/class/util/SC_Utils.php
r21582 r21583 1744 1744 1745 1745 /** 1746 * プラグインが配置されているディレクトリ(フルパス)を取得する 1747 * 1748 * @param string $file プラグイン情報ファイル(info.php)のパス 1749 * @return SimpleXMLElement プラグイン XML 1750 */ 1751 function sfGetPluginFullPathByRequireFilePath($file) { 1752 return str_replace('\\', '/', dirname($file)) . '/'; 1753 } 1754 1755 /** 1756 * プラグインのパスを取得する 1757 * 1758 * @param string $pluginFullPath プラグインが配置されているディレクトリ(フルパス) 1759 * @return SimpleXMLElement プラグイン XML 1760 */ 1761 function sfGetPluginPathByPluginFullPath($pluginFullPath) { 1762 return basename(rtrim($pluginFullPath, '/')); 1763 } 1764 1765 /** 1766 * プラグイン情報配列の基本形を作成する 1767 * 1768 * @param string $file プラグイン情報ファイル(info.php)のパス 1769 * @return array プラグイン情報配列 1770 */ 1771 function sfMakePluginInfoArray($file) { 1772 $fullPath = SC_Utils_Ex::sfGetPluginFullPathByRequireFilePath($file); 1773 1774 return 1775 array( 1776 // パス 1777 'path' => SC_Utils_Ex::sfGetPluginPathByPluginFullPath($fullPath), 1778 // プラグイン名 1779 'name' => '未定義', 1780 // フルパス 1781 'fullpath' => $fullPath, 1782 // バージョン 1783 'version' => null, 1784 // 著作者 1785 'auther' => '未定義', 1786 ) 1787 ; 1788 } 1789 1790 /** 1791 * プラグイン情報配列を取得する 1792 * 1793 * TODO include_once を利用することで例外対応をサボタージュしているのを改善する。 1794 * 1795 * @param string $path プラグインのディレクトリ名 1796 * @return array プラグイン情報配列 1797 */ 1798 function sfGetPluginInfoArray($path) { 1799 return (array)include_once PLUGIN_REALDIR . "$path/plugin_info.php"; 1800 } 1801 1802 /** 1803 * プラグイン XML を読み込む 1804 * 1805 * TODO 空だったときを考慮 1806 * 1807 * @return SimpleXMLElement プラグイン XML 1808 * @deprecated 1809 */ 1810 function sfGetPluginsXml() { 1811 return simplexml_load_file(PLUGIN_REALDIR . 'plugins.xml'); 1812 } 1813 1814 /** 1815 * プラグイン XML を書き込む 1816 * 1817 * @param SimpleXMLElement $pluginsXml プラグイン XML 1818 * @return integer ファイルに書き込まれたバイト数を返します。 1819 * @deprecated 1820 */ 1821 function sfPutPluginsXml($pluginsXml) { 1822 if (version_compare(PHP_VERSION, '5.0.0', '>')) { 1823 return; 1824 } 1825 1826 $xml = $pluginsXml->asXML(); 1827 if (strlen($xml) == 0) trigger_error('', E_USER_ERROR); 1828 1829 $return = file_put_contents(PLUGIN_REALDIR . 'plugins.xml', $pluginsXml->asXML()); 1830 if ($return === false) trigger_error('', E_USER_ERROR); 1831 return $return; 1832 } 1833 1834 function sfLoadPluginInfo($filenamePluginInfo) { 1835 return (array)include_once $filenamePluginInfo; 1836 } 1837 1838 /** 1839 * 現在の Unix タイムスタンプを float (秒単位) でマイクロ秒まで返す 1840 * 1841 * PHP4の上位互換用途。 1842 * @param SimpleXMLElement $pluginsXml プラグイン XML 1843 * @return integer ファイルに書き込まれたバイト数を返します。 1746 * 前方互換用 1747 * 1748 * @deprecated 2.12.0 microtime(true) を使用する。 1844 1749 */ 1845 1750 function sfMicrotimeFloat() { 1846 $microtime = microtime(true); 1847 if (is_string($microtime)) { 1848 list($usec, $sec) = explode(' ', microtime()); 1849 return (float)$usec + (float)$sec; 1850 } 1851 return $microtime; 1751 trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 1752 return microtime(true); 1852 1753 } 1853 1754
Note: See TracChangeset
for help on using the changeset viewer.