当前位置: 首页>>代码示例>>PHP>>正文


PHP GeneralUtility::isValidUrl方法代码示例

本文整理汇总了PHP中TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl方法的典型用法代码示例。如果您正苦于以下问题:PHP GeneralUtility::isValidUrl方法的具体用法?PHP GeneralUtility::isValidUrl怎么用?PHP GeneralUtility::isValidUrl使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TYPO3\CMS\Core\Utility\GeneralUtility的用法示例。


在下文中一共展示了GeneralUtility::isValidUrl方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: isInLocalDomain

 /**
  * Determines whether the URL matches a domain
  * in the sys_domain databse table.
  *
  * @param string $url Absolute URL which needs to be checked
  * @return boolean Whether the URL is considered to be local
  */
 protected function isInLocalDomain($url)
 {
     $result = FALSE;
     if (\TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl($url)) {
         $parsedUrl = parse_url($url);
         if ($parsedUrl['scheme'] === 'http' || $parsedUrl['scheme'] === 'https') {
             $host = $parsedUrl['host'];
             // Removes the last path segment and slash sequences like /// (if given):
             $path = preg_replace('#/+[^/]*$#', '', $parsedUrl['path']);
             $cObj = new ContentObjectRenderer();
             $localDomains = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('domainName', 'sys_domain', '1=1' . $cObj->enableFields('sys_domain'));
             if (is_array($localDomains)) {
                 foreach ($localDomains as $localDomain) {
                     // strip trailing slashes (if given)
                     $domainName = rtrim($localDomain['domainName'], '/');
                     if (\TYPO3\CMS\Core\Utility\GeneralUtility::isFirstPartOfStr($host . $path . '/', $domainName . '/')) {
                         $result = TRUE;
                         break;
                     }
                 }
             }
         }
     }
     return $result;
 }
开发者ID:busynoggin,项目名称:cicregister,代码行数:32,代码来源:UrlValidator.php

示例2: unserialize

 /**
  * @param $status
  * @param $table
  * @param $id
  * @param $fieldArray
  * @param $self
  */
 function processDatamap_postProcessFieldArray($status, $table, $id, &$fieldArray, &$self)
 {
     if ($table == 'tx_html5videoplayer_domain_model_video') {
         $data = $fieldArray;
         if ($status == 'update') {
             $data = array_merge($GLOBALS['TYPO3_DB']->exec_SELECTgetSingleRow('*', 'tx_html5videoplayer_domain_model_video', 'uid=' . (int) $id), $data);
         }
         $vimeoUrl = $data['vimeo'];
         if (($status == 'update' || $status == 'new') && $vimeoUrl != '' && GeneralUtility::isValidUrl($vimeoUrl)) {
             if (preg_match('/https?:\\/\\/(?:www\\.)?vimeo.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/([^\\/]*)\\/videos\\/|album\\/(\\d+)\\/video\\/|)(\\d+)(?:$|\\/|\\?)/i', $vimeoUrl, $matches)) {
                 $videoId = $matches[3];
                 $videoData = unserialize(GeneralUtility::getUrl('http://vimeo.com/api/v2/video/' . $videoId . '.php'));
                 if (is_array($videoData)) {
                     // We're only interested in index zero.
                     $videoData = $videoData[0];
                     if (!isset($data['title']) || trim($data['title']) == '') {
                         $fieldArray['title'] = $videoData['title'];
                     }
                     if (!isset($data['description']) || trim($data['description']) == '') {
                         $fieldArray['description'] = $videoData['description'];
                     }
                     if (!isset($data['posterimage']) || trim($data['posterimage']) == '') {
                         $resourceFactory = ResourceFactory::getInstance();
                         $folder = $resourceFactory->retrieveFileOrFolderObject($this->getUploadFolder());
                         $thumbnailData = GeneralUtility::getUrl($videoData['thumbnail_large']);
                         $file = $folder->createFile(basename($videoData['thumbnail_large']) . '.jpg');
                         $file->setContents($thumbnailData);
                         $fieldArray['posterimage'] = 'file:' . $file->getUid();
                     }
                 }
             }
         }
     }
 }
开发者ID:visol,项目名称:html5videoplayer,代码行数:41,代码来源:VimeoProcessDatamap.php

示例3: getGoogleSitemapToolUrl

 /**
  * Generate Google tool url for sitemap submit
  */
 protected function getGoogleSitemapToolUrl()
 {
     $url = $this->toolUrl . urlencode($this->xmlSiteUrl);
     if (!GeneralUtility::isValidUrl($url)) {
         return null;
     }
     return $url;
 }
开发者ID:markussom,项目名称:sitemap_generator,代码行数:11,代码来源:GoogleSitemapService.php

示例4: validateVariables

 /**
  * Validate required variables
  *
  * @param string $defaultDomain
  * @throws \TYPO3\CMS\Core\Exception
  * @return boolean
  */
 protected function validateVariables($defaultDomain)
 {
     if (empty($defaultDomain)) {
         throw new \TYPO3\CMS\Core\Exception('No default domain configured');
     } elseif (GeneralUtility::isValidUrl($defaultDomain) === false) {
         throw new \TYPO3\CMS\Core\Exception('Default domain invalid');
     }
     return true;
 }
开发者ID:Schweriner,项目名称:my_redirects,代码行数:16,代码来源:ActiveLookupCommandController.php

示例5: getUrl

 /**
  * Get url
  *
  * @param bool $relativeToCurrentScript Determines whether the URL returned should be relative to the current script, in case it is relative at all.
  * @return string
  */
 public function getUrl($relativeToCurrentScript = false)
 {
     $url = $this->url;
     if ($relativeToCurrentScript && !GeneralUtility::isValidUrl($url)) {
         $absolutePathToContainingFolder = PathUtility::dirname(PATH_site . $url);
         $pathPart = PathUtility::getRelativePathTo($absolutePathToContainingFolder);
         $filePart = substr(PATH_site . $url, strlen($absolutePathToContainingFolder) + 1);
         $url = $pathPart . $filePart;
     }
     return $url;
 }
开发者ID:rickymathew,项目名称:TYPO3.CMS,代码行数:17,代码来源:Image.php

示例6: check

 /**
  * Validates that a specified field has valid url syntax.
  *
  * @param array &$check The TypoScript settings for this error check
  * @param string $name The field name
  * @param array &$gp The current GET/POST parameters
  * @return string The error string
  */
 public function check()
 {
     $checkFailed = '';
     if (isset($this->gp[$this->formFieldName]) && strlen(trim($this->gp[$this->formFieldName])) > 0) {
         $valid = \TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl($this->gp[$this->formFieldName]);
         if (!$valid) {
             $checkFailed = $this->getCheckFailed();
         }
     }
     return $checkFailed;
 }
开发者ID:mhuebe,项目名称:formhandler,代码行数:19,代码来源:Tx_Formhandler_ErrorCheck_Url.php

示例7: isValid

 /**
  * Returns TRUE, if the given property ($propertyValue) is a valid URL / URI.
  *
  * If at least one error occurred, the result is FALSE.
  *
  * @param mixed $value The value that should be validated
  *
  * @return boolean TRUE if the value is valid, FALSE if an error occured
  */
 public function isValid($value)
 {
     if (empty($value)) {
         return TRUE;
     }
     if (GeneralUtility::isValidUrl($value) === FALSE) {
         $this->addError('The given subject was not a valid URL.', 1392679659);
         return FALSE;
     }
     return TRUE;
 }
开发者ID:dextar1,项目名称:t3extblog,代码行数:20,代码来源:UrlValidator.php

示例8: validateAdditionalFields

 /**
  * Validates the additional fields' values
  *
  * @param array $submittedData An array containing the data submitted by the add/edit task form
  * @param \TYPO3\CMS\Scheduler\Controller\SchedulerModuleController $schedulerModule Reference to the scheduler backend module
  * @return boolean TRUE if validation was ok (or selected class is not relevant), FALSE otherwise
  */
 public function validateAdditionalFields(array &$submittedData, SchedulerModuleController $schedulerModule)
 {
     $validInput = TRUE;
     $urlsToCrawl = GeneralUtility::trimExplode(LF, $submittedData[$this->fieldPrefix . 'UrlsToCrawl'], TRUE);
     foreach ($urlsToCrawl as $url) {
         if (!GeneralUtility::isValidUrl($url)) {
             $validInput = FALSE;
             break;
         }
     }
     if (empty($submittedData[$this->fieldPrefix . 'UrlsToCrawl']) || !$validInput) {
         $message = htmlspecialchars($GLOBALS['LANG']->sL('LLL:EXT:minicrawler/locallang.xml:scheduler.error.urlNotValid'));
         $schedulerModule->addMessage($message, FlashMessage::ERROR);
         $validInput = FALSE;
     }
     return $validInput;
 }
开发者ID:sven-er,项目名称:minicrawler,代码行数:24,代码来源:CrawlerTaskUrlField.php

示例9: handleConfiguration

 /**
  * Modify the given times via the configuration
  *
  * @param array         $times
  * @param Configuration $configuration
  *
  * @return void
  */
 public function handleConfiguration(array &$times, Configuration $configuration)
 {
     $url = $configuration->getExternalIcsUrl();
     if (!GeneralUtility::isValidUrl($url)) {
         HelperUtility::createFlashMessage('Configuration with invalid ICS URL: ' . $url, 'Index ICS URL', FlashMessage::ERROR);
         return;
     }
     $events = $this->icsReaderService->toArray($url);
     foreach ($events as $event) {
         /** @var $event ICalEvent */
         $startTime = DateTimeUtility::getDaySecondsOfDateTime($event->getStart());
         $endTime = DateTimeUtility::getDaySecondsOfDateTime($event->getEnd());
         if ($endTime === self::DAY_END) {
             $endTime = 0;
         }
         $entry = ['pid' => 0, 'start_date' => $event->getStart(), 'end_date' => $event->getEnd() ?: $event->getStart(), 'start_time' => $startTime, 'end_time' => $endTime, 'all_day' => $endTime === 0];
         $times[] = $entry;
     }
 }
开发者ID:kaptankorkut,项目名称:calendarize,代码行数:27,代码来源:ExternalTimeTable.php

示例10: determineBaseUrl

 /**
  * Determines the base URL for this driver, from the configuration or
  * the TypoScript frontend object
  *
  * @return void
  */
 protected function determineBaseUrl()
 {
     if (\TYPO3\CMS\Core\Utility\GeneralUtility::isFirstPartOfStr($this->absoluteBasePath, PATH_site)) {
         // use site-relative URLs
         // TODO add unit test
         $this->baseUri = substr($this->absoluteBasePath, strlen(PATH_site));
     } elseif (isset($this->configuration['baseUri']) && \TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl($this->configuration['baseUri'])) {
         $this->baseUri = rtrim($this->configuration['baseUri'], '/') . '/';
     } else {
     }
 }
开发者ID:nicksergio,项目名称:TYPO3v4-Core,代码行数:17,代码来源:LocalDriver.php

示例11: determineBaseUrl

 /**
  * Determines the base URL for this driver, from the configuration or
  * the TypoScript frontend object
  *
  * @return void
  */
 protected function determineBaseUrl()
 {
     // only calculate baseURI if the storage does not enforce jumpUrl Script
     if ($this->hasCapability(ResourceStorage::CAPABILITY_PUBLIC)) {
         if (GeneralUtility::isFirstPartOfStr($this->absoluteBasePath, PATH_site)) {
             // use site-relative URLs
             $temporaryBaseUri = rtrim(PathUtility::stripPathSitePrefix($this->absoluteBasePath), '/');
             if ($temporaryBaseUri !== '') {
                 $uriParts = explode('/', $temporaryBaseUri);
                 $uriParts = array_map('rawurlencode', $uriParts);
                 $temporaryBaseUri = implode('/', $uriParts) . '/';
             }
             $this->baseUri = $temporaryBaseUri;
         } elseif (isset($this->configuration['baseUri']) && GeneralUtility::isValidUrl($this->configuration['baseUri'])) {
             $this->baseUri = rtrim($this->configuration['baseUri'], '/') . '/';
         }
     }
 }
开发者ID:graurus,项目名称:testgit_t37,代码行数:24,代码来源:LocalDriver.php

示例12: processPhysical

 /**
  * Processes a physical unit for the Solr index
  *
  * @access	protected
  *
  * @param	tx_dlf_document		&$doc: The METS document
  * @param	integer		$page: The page number
  * @param	array		$physicalUnit: Array of the physical unit to process
  *
  * @return	integer		0 on success or 1 on failure
  */
 protected static function processPhysical(tx_dlf_document &$doc, $page, array $physicalUnit)
 {
     $errors = 0;
     // Read extension configuration.
     $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf'][self::$extKey]);
     if (!empty($physicalUnit['files'][$extConf['fileGrpFulltext']])) {
         $file = $doc->getFileLocation($physicalUnit['files'][$extConf['fileGrpFulltext']]);
         // Load XML file.
         if (\TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl($file) || version_compare(phpversion(), '5.3.3', '<')) {
             // Set user-agent to identify self when fetching XML data.
             if (!empty($extConf['useragent'])) {
                 @ini_set('user_agent', $extConf['useragent']);
             }
             // Turn off libxml's error logging.
             $libxmlErrors = libxml_use_internal_errors(TRUE);
             // disable entity loading
             $previousValueOfEntityLoader = libxml_disable_entity_loader(TRUE);
             // Load XML from file.
             $xml = simplexml_load_string(file_get_contents($file));
             // reset entity loader setting
             libxml_disable_entity_loader($previousValueOfEntityLoader);
             // Reset libxml's error logging.
             libxml_use_internal_errors($libxmlErrors);
             if ($xml === FALSE) {
                 return 1;
             }
         } else {
             return 1;
         }
         // Load class.
         if (!class_exists('Apache_Solr_Document')) {
             require_once \TYPO3\CMS\Core\Utility\GeneralUtility::getFileAbsFileName('EXT:' . self::$extKey . '/lib/SolrPhpClient/Apache/Solr/Document.php');
         }
         // Create new Solr document.
         $solrDoc = new Apache_Solr_Document();
         // Create unique identifier from document's UID and unit's XML ID.
         $solrDoc->setField('id', $doc->uid . $physicalUnit['id']);
         $solrDoc->setField('uid', $doc->uid);
         $solrDoc->setField('pid', $doc->pid);
         $solrDoc->setField('page', $page);
         if (!empty($physicalUnit['files'][$extConf['fileGrpThumbs']])) {
             $solrDoc->setField('thumbnail', $doc->getFileLocation($physicalUnit['files'][$extConf['fileGrpThumbs']]));
         }
         $solrDoc->setField('partof', $doc->parentId);
         $solrDoc->setField('root', $doc->rootId);
         $solrDoc->setField('sid', $physicalUnit['id']);
         $solrDoc->setField('toplevel', FALSE);
         $solrDoc->setField('type', $physicalUnit['type'], self::$fields['fieldboost']['type']);
         $solrDoc->setField('fulltext', tx_dlf_alto::getRawText($xml));
         try {
             self::$solr->service->addDocument($solrDoc);
         } catch (Exception $e) {
             if (!defined('TYPO3_cliMode')) {
                 $message = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Messaging\\FlashMessage', tx_dlf_helper::getLL('flash.solrException', TRUE) . '<br />' . htmlspecialchars($e->getMessage()), tx_dlf_helper::getLL('flash.error', TRUE), \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR, TRUE);
                 tx_dlf_helper::addMessage($message);
             }
             return 1;
         }
     }
     return $errors;
 }
开发者ID:jacmendt,项目名称:goobi-presentation,代码行数:72,代码来源:class.tx_dlf_indexing.php

示例13: load

 /**
  * Load XML file from URL
  *
  * @access	protected
  *
  * @param	string		$location: The URL of the file to load
  *
  * @return	boolean		TRUE on success or FALSE on failure
  */
 protected function load($location)
 {
     // Load XML file.
     if (\TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl($location) || version_compare(phpversion(), '5.3.3', '<')) {
         // Load extension configuration
         $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['dlf']);
         // Set user-agent to identify self when fetching XML data.
         if (!empty($extConf['useragent'])) {
             @ini_set('user_agent', $extConf['useragent']);
         }
         // Turn off libxml's error logging.
         $libxmlErrors = libxml_use_internal_errors(TRUE);
         // Disables the functionality to allow external entities to be loaded when parsing the XML, must be kept
         $previousValueOfEntityLoader = libxml_disable_entity_loader(TRUE);
         // Load XML from file.
         $xml = simplexml_load_string(file_get_contents($location));
         // reset entity loader setting
         libxml_disable_entity_loader($previousValueOfEntityLoader);
         // Reset libxml's error logging.
         libxml_use_internal_errors($libxmlErrors);
         // Set some basic properties.
         if ($xml !== FALSE) {
             $this->xml = $xml;
             return TRUE;
         } else {
             if (TYPO3_DLOG) {
                 \TYPO3\CMS\Core\Utility\GeneralUtility::devLog('[tx_dlf_document->load(' . $location . ')] Could not load XML file from "' . $location . '"', self::$extKey, SYSLOG_SEVERITY_ERROR);
             }
         }
     } else {
         if (TYPO3_DLOG) {
             \TYPO3\CMS\Core\Utility\GeneralUtility::devLog('[tx_dlf_document->load(' . $location . ')] Invalid file location "' . $location . '" for document loading', self::$extKey, SYSLOG_SEVERITY_ERROR);
         }
     }
     return FALSE;
 }
开发者ID:jacmendt,项目名称:goobi-presentation,代码行数:45,代码来源:class.tx_dlf_document.php

示例14: preprocessImages

 /**
  * @param array $files
  * @param boolean $onlyProperties
  * @throws Exception
  * @return array|NULL
  */
 public function preprocessImages($files, $onlyProperties = FALSE)
 {
     if (TRUE === empty($files)) {
         return NULL;
     }
     if ('BE' === TYPO3_MODE) {
         $this->simulateFrontendEnvironment();
     }
     $setup = array('width' => $this->arguments['width'], 'height' => $this->arguments['height'], 'minW' => $this->arguments['minWidth'], 'minH' => $this->arguments['minHeight'], 'maxW' => $this->arguments['maxWidth'], 'maxH' => $this->arguments['maxHeight'], 'treatIdAsReference' => FALSE);
     $images = array();
     foreach ($files as $file) {
         $imageInfo = $this->contentObject->getImgResource($file->getUid(), $setup);
         $GLOBALS['TSFE']->lastImageInfo = $imageInfo;
         if (FALSE === is_array($imageInfo)) {
             throw new Exception('Could not get image resource for "' . htmlspecialchars($file->getCombinedIdentifier()) . '".', 1253191060);
         }
         if ((double) substr(TYPO3_version, 0, 3) < 7.1) {
             $imageInfo[3] = GeneralUtility::png_to_gif_by_imagemagick($imageInfo[3]);
         } else {
             $imageInfo[3] = GraphicalFunctions::pngToGifByImagemagick($imageInfo[3]);
         }
         $imageInfo[3] = GeneralUtility::png_to_gif_by_imagemagick($imageInfo[3]);
         $GLOBALS['TSFE']->imagesOnPage[] = $imageInfo[3];
         if (TRUE === GeneralUtility::isValidUrl($imageInfo[3])) {
             $imageSource = $imageInfo[3];
         } else {
             $imageSource = $GLOBALS['TSFE']->absRefPrefix . GeneralUtility::rawUrlEncodeFP($imageInfo[3]);
         }
         if (TRUE === $onlyProperties) {
             $file = ResourceUtility::getFileArray($file);
         }
         $images[] = array('info' => $imageInfo, 'source' => $imageSource, 'file' => $file);
     }
     if ('BE' === TYPO3_MODE) {
         $this->resetFrontendEnvironment();
     }
     return $images;
 }
开发者ID:smichaelsen,项目名称:vhs,代码行数:44,代码来源:AbstractImageViewHelper.php

示例15: getPublicUrlReturnsValidUrlContainingSpecialCharacters

 /**
  * @test
  * @dataProvider getPublicUrlReturnsValidUrlContainingSpecialCharacters_dataProvider
  */
 public function getPublicUrlReturnsValidUrlContainingSpecialCharacters($fileIdentifier)
 {
     $baseUri = 'http://example.org/foobar/' . uniqid();
     $fixture = $this->createDriverFixture(array('baseUri' => $baseUri));
     $publicUrl = $fixture->getPublicUrl($fileIdentifier);
     $this->assertTrue(GeneralUtility::isValidUrl($publicUrl), 'getPublicUrl did not return a valid URL:' . $publicUrl);
 }
开发者ID:Mr-Robota,项目名称:TYPO3.CMS,代码行数:11,代码来源:LocalDriverTest.php


注:本文中的TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。