getSiteURL PHP Class



我正在为CRM应用程序构建一个类,我必须创建一个公共函数来调用站点URL。这是我的方法,但我得到一个错误...

<?php
    class idkCRM {
                public function __construct($db_con) {
                    $this->db = $db_con;
                }
                private $use_forwarded_host = false;

                private function url_org( $s, $use_forwarded_host ) {
                    $ssl = (!empty($s['HTTPS'] ) && $s['HTTPS'] == 'on' );
                    $sp = strtolower($s['SERVER_PROTOCOL'] );
                    $protocol = substr($sp, 0, strpos($sp, '/')) . ( ( $ssl ) ? 's' : '' );
                    $port = $s['SERVER_PORT'];
                    $port = ( ( ! $ssl && $port=='80' ) || ($ssl && $port =='443' ) ) ? '' : ':'.$port;
                    $host = ( $use_forwarded_host && isset ( $s['HTTP_X_FORWARDED_HOST'] ) ) ? $s['HTTP_X_FORWARDED_HOST'] : ( isset( $s['HTTP_HOST'] ) ? $s['HTTP_HOST'] : null );
                    $host = isset ( $host ) ? $host : $s['SERVER_NAME'] . $port;
                    return $protocol. '://' .$host;
                }
                public function full_url( $s, $use_forwarded_host=false ) {
                    return url_org( $s, $use_forwarded_host ) . $s['REQUEST_URI'];
                }
                public function getUrl ( $s, $use_forwarded_host=false ) {
                    return url_org ( $s, $use_forwarded_host ) ;
                }
            }
?>

所以我应该像这样调用我的函数吗?

$absolute_url = full_url( $_SERVER );
echo $absolute_url;
$url = getUrl( $_SERVER );
echo $url;

如果你想从同一个类中调用函数,那么你必须使用

$this->yourfunction();否则,您需要创建一个新的 idkCRM 实例,如下所示:

$crm = new idkCRM($dbcon);
$crm->yourfunction();

最新更新