我正在为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();