Factor out slugification into utility function
[gitphp.git] / include / Util.class.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?php
/**
 * GitPHP Util
 *
 * Utility functions
 *
 * @author Christopher Han <xiphux@gmail.com>
 * @copyright Copyright (c) 2010 Christopher Han
 * @package GitPHP
 */
 
/**
 * Util class
 *
 * @package GitPHP
 */
class GitPHP_Util
{
 
        /**
         * AddSlash
         *
         * Adds a trailing slash to a directory path if necessary
         *
         * @access public
         * @static
         * @param string $path path to add slash to
         * @param $filesystem true if this is a filesystem path (to also check for backslash for windows paths)
         * @return string $path with a trailing slash
         */
        public static function AddSlash($path, $filesystem = true)
        {
                if (empty($path))
                        return $path;
 
                $end = substr($path, -1);
 
                if (!(( ($end == '/') || ($end == ':')) || ($filesystem && GitPHP_Util::IsWindows() && ($end == '\\')))) {
                        if (GitPHP_Util::IsWindows() && $filesystem) {
                                $path .= '\\';
                        } else {
                                $path .= '/';
                        }
                }
 
                return $path;
        }
 
        /**
         * IsWindows
         *
         * Tests if this is running on windows
         *
         * @access public
         * @static
         * @return bool true if on windows
         */
        public static function IsWindows()
        {
                return (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN');
        }
 
        /**
         * Is64Bit
         *
         * Tests if this is a 64 bit machine
         *
         * @access public
         * @static
         * @return bool true if on 64 bit
         */
        public function Is64Bit()
        {
                return (strpos(php_uname('m'), '64') !== false);
        }
 
}
 
comments