本文整理汇总了PHP中eZSys::serverProtocol方法的典型用法代码示例。如果您正苦于以下问题:PHP eZSys::serverProtocol方法的具体用法?PHP eZSys::serverProtocol怎么用?PHP eZSys::serverProtocol使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类eZSys
的用法示例。
在下文中一共展示了eZSys::serverProtocol方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: extension_path
/**
* Loose extension path function for include use originally from ezextension.php
*
* @deprecated Since 4.3
*/
function extension_path($extension, $withWWWDir = false, $withHost = false, $withProtocol = false)
{
$base = eZExtension::baseDirectory();
$path = '';
if ($withProtocol) {
if (is_string($withProtocol)) {
$path .= $withProtocol;
} else {
$path .= eZSys::serverProtocol();
}
$path .= ':';
}
if ($withHost) {
$path .= '//';
if (is_string($withHost)) {
$path .= $withHost;
} else {
$path .= eZSys::hostname();
}
}
if ($withWWWDir) {
$path .= eZSys::wwwDir();
}
if ($withWWWDir) {
$path .= '/' . $base . '/' . $extension;
} else {
$path .= $base . '/' . $extension;
}
return $path;
}
示例2: process
/**
* This is a hook which is called by the language switcher module on
* implementation classes.
*
* In this implementation it is doing initialisation as an example.
*
* @return void
*/
public function process()
{
$saIni = $this->getSiteAccessIni();
$this->destinationLocale = $saIni->variable('RegionalSettings', 'ContentObjectLocale');
// Detect the type of siteaccess we are dealing with. Initially URI and Host are supported.
// We don't want the siteaccess part here, since we are inserting our siteaccess name.
$indexFile = trim(eZSys::indexFile(false), '/');
switch ($GLOBALS['eZCurrentAccess']['type']) {
case eZSiteAccess::TYPE_URI:
eZURI::transformURI($host, true, 'full');
break;
default:
$host = $saIni->variable('SiteSettings', 'SiteURL');
$host = eZSys::serverProtocol() . "://" . $host;
break;
}
$this->baseDestinationUrl = "{$host}{$indexFile}";
}
示例3: testServerProtocol
public function testServerProtocol()
{
self::assertEquals('http', eZSys::serverProtocol());
$_SERVER['HTTP_X_FORWARDED_PROTO'] = 'https';
self::assertEquals('https', eZSys::serverProtocol());
unset($_SERVER['HTTP_X_FORWARDED_PROTO']);
}
示例4: getenv
$limit = 10;
}
$offset = $Params['Offset'];
if (!is_numeric($offset)) {
$offset = 0;
}
$url = eZURL::fetch($urlID);
if (!$url) {
return $Module->handleError(eZError::KERNEL_NOT_AVAILABLE, 'kernel');
}
$link = $url->attribute('url');
if (preg_match("/^(http:)/i", $link) or preg_match("/^(ftp:)/i", $link) or preg_match("/^(https:)/i", $link) or preg_match("/^(file:)/i", $link) or preg_match("/^(mailto:)/i", $link)) {
// No changes
} else {
$domain = getenv('HTTP_HOST');
$protocol = eZSys::serverProtocol();
$preFix = $protocol . "://" . $domain;
$preFix .= eZSys::wwwDir();
$link = preg_replace("/^\\//e", "", $link);
$link = $preFix . "/" . $link;
}
$viewParameters = array('offset' => $offset, 'limit' => $limit);
$http = eZHTTPTool::instance();
$objectList = eZURLObjectLink::fetchObjectVersionList($urlID, $viewParameters);
$urlViewCount = eZURLObjectLink::fetchObjectVersionCount($urlID);
if ($Module->isCurrentAction('EditObject')) {
if ($http->hasPostVariable('ObjectList')) {
$versionID = $http->postVariable('ObjectList');
$version = eZContentObjectVersion::fetch($versionID);
$contentObjectID = $version->attribute('contentobject_id');
$versionNr = $version->attribute('version');
示例5: packFiles
/**
* Merges a collection of files togheter and returns array of paths to the files.
* js /css content is returned as string if packlevel is 0 and you use a js/ css generator.
* $fileArray can also be array of array of files, like array( 'file.js', 'file2.js', array( 'file5.js' ) )
* The name of the cached file is a md5 hash consistant of the file paths
* of the valid files in $file_array and the packlevel.
* The whole argument is used instead of file path on js/ css generators in the cache hash.
*
* @param array|string $fileArray Either array of file paths, or string with file path
* @param string $subPath In witch sub path of design folder to look for files.
* @param string $fileExtension File extension name (for use on cache file)
* @param int $packLevel Level of packing, values: 0-3
* @param bool $indexDirInCacheHash To add index path in cache hash or not
* @param string $filePostName Extra file name part, example "_screen" in case of medai use for css
*
* @return array List of css files
*/
static function packFiles($fileArray, $subPath = '', $fileExtension = '.js', $packLevel = 2, $indexDirInCacheHash = false, $filePostName = '')
{
if (!$fileArray) {
return array();
} else {
if (!is_array($fileArray)) {
$fileArray = array($fileArray);
}
}
$ezjscINI = eZINI::instance('ezjscore.ini');
$bases = eZTemplateDesignResource::allDesignBases();
$customHosts = $ezjscINI->variable('Packer', 'CustomHosts');
$data = array('http' => array(), 'www' => array(), 'locale' => array(), 'cache_name' => '', 'cache_hash' => '', 'cache_path' => '', 'last_modified' => 0, 'file_extension' => $fileExtension, 'file_post_name' => $filePostName, 'pack_level' => $packLevel, 'sub_path' => $subPath, 'cache_dir' => self::getCacheDir(), 'www_dir' => htmlspecialchars(self::getWwwDir(), ENT_COMPAT, 'UTF-8'), 'index_dir' => self::getIndexDir(), 'custom_host' => isset($customHosts[$fileExtension]) ? $customHosts[$fileExtension] : '');
// Only pack files if Packer is enabled and if not set DevelopmentMode is disabled
if ($ezjscINI->hasVariable('eZJSCore', 'Packer')) {
$packerIniValue = $ezjscINI->variable('eZJSCore', 'Packer');
if ($packerIniValue === 'disabled') {
$data['pack_level'] = 0;
} else {
if (is_numeric($packerIniValue)) {
$data['pack_level'] = (int) $packerIniValue;
}
}
} else {
if (eZINI::instance()->variable('TemplateSettings', 'DevelopmentMode') === 'enabled') {
$data['pack_level'] = 0;
}
}
// Needed for image includes to work on ezp installs with mixed access methods (virtualhost + url based setup)
if ($indexDirInCacheHash) {
$data['cache_name'] = $data['index_dir'];
}
$originalFileArray = $fileArray;
while (!empty($fileArray)) {
$file = array_shift($fileArray);
// if $file is array, concat it to the file array and continue
if ($file && is_array($file)) {
$fileArray = array_merge($file, $fileArray);
continue;
} else {
if (!$file) {
continue;
} else {
if (strpos($file, '::') !== false) {
$server = self::serverCallHelper(explode('::', $file));
if (!$server instanceof ezjscServerRouter) {
continue;
}
$fileTime = $server->getCacheTime($data);
// Generate content straight away if packing is disabled
if ($data['pack_level'] === 0) {
$data['www'][] = $server->call($fileArray);
} else {
if ($fileTime === -1) {
$data['http'][] = $server->call($fileArray);
} else {
$data['locale'][] = $server;
$data['cache_name'] .= $file . '_';
}
}
$data['last_modified'] = max($data['last_modified'], $fileTime);
continue;
} else {
if (strpos($file, 'http://') === 0 || strpos($file, 'https://') === 0) {
$data['http'][] = $file;
continue;
} else {
if (strpos($file, '://') === 0) {
if (!isset($protocol)) {
$protocol = eZSys::serverProtocol();
}
$data['http'][] = $protocol . $file;
continue;
} else {
if (strpos($file, 'var/') === 0) {
if (substr($file, 0, 2) === '//' || preg_match("#^[a-zA-Z0-9]+:#", $file)) {
$file = '/';
} else {
if (strlen($file) > 0 && $file[0] !== '/') {
$file = '/' . $file;
}
}
eZURI::transformURI($file, true, 'relative');
//.........这里部分代码省略.........
示例6: getServerURL
public static function getServerURL()
{
if (self::$serverURL === null) {
$oeini = eZINI::instance('ezoe.ini');
if ($oeini->hasVariable('SystemSettings', 'RelativeURL') && $oeini->variable('SystemSettings', 'RelativeURL') === 'enabled') {
self::$serverURL = eZSys::wwwDir();
if (self::$serverURL === '/') {
self::$serverURL = '';
}
} else {
$domain = eZSys::hostname();
$protocol = eZSys::serverProtocol();
self::$serverURL = $protocol . '://' . $domain . eZSys::wwwDir();
}
}
return self::$serverURL;
}
示例7: createRedirectUrl
static function createRedirectUrl($path, $parameters = array())
{
$parameters = array_merge(array('host' => false, 'protocol' => false, 'port' => false, 'username' => false, 'password' => false, 'override_host' => false, 'override_protocol' => false, 'override_port' => false, 'override_username' => false, 'override_password' => false, 'pre_url' => true), $parameters);
$host = $parameters['host'];
$protocol = $parameters['protocol'];
$port = $parameters['port'];
$username = $parameters['username'];
$password = $parameters['password'];
if (preg_match('#^([a-zA-Z0-9]+):(.+)$#', $path, $matches)) {
if ($matches[1]) {
$protocol = $matches[1];
}
$path = $matches[2];
}
if (preg_match('#^//((([a-zA-Z0-9_.]+)(:([a-zA-Z0-9_.]+))?)@)?([^./:]+(\\.[^./:]+)*)(:([0-9]+))?(.*)$#', $path, $matches)) {
if ($matches[6]) {
$host = $matches[6];
}
if ($matches[3]) {
$username = $matches[3];
}
if ($matches[5]) {
$password = $matches[5];
}
if ($matches[9]) {
$port = $matches[9];
}
$path = $matches[10];
}
if ($parameters['pre_url']) {
if (strlen($path) > 0 and $path[0] != '/') {
$preURL = eZSys::serverVariable('SCRIPT_URL');
if (strlen($preURL) > 0 and $preURL[strlen($preURL) - 1] != '/') {
$preURL .= '/';
}
$path = $preURL . $path;
}
}
if ($parameters['override_host']) {
$host = $parameters['override_host'];
}
if ($parameters['override_port']) {
$port = $parameters['override_port'];
}
if (!is_string($host)) {
$host = eZSys::hostname();
}
if (!is_string($protocol)) {
$protocol = eZSys::serverProtocol();
// Default to https if SSL is enabled
if (eZSys::isSSLNow()) {
$port = false;
}
}
if ($parameters['override_protocol']) {
$protocol = $parameters['override_protocol'];
}
$uri = $protocol . '://';
if ($parameters['override_username']) {
$username = $parameters['override_username'];
}
if ($parameters['override_password']) {
$password = $parameters['override_password'];
}
if ($username) {
$uri .= $username;
if ($password) {
$uri .= ':' . $password;
}
$uri .= '@';
}
$uri .= $host;
if ($port) {
$uri .= ':' . $port;
}
$uri .= $path;
return $uri;
}