/** * Prepares a string so that it can be used in urls. * * @param string $value The value that should be urlised. * * @return string The urlised string. */ public static function getUrl($value) { // convert cyrlic, greek or other caracters to ASCII characters $value = Transliterator::transliterate($value); // make a clean url out of it return Transliterator::urlize($value); }
/** * Generates canonical text for step text. * * @param string $stepText * * @return string */ private function generateCanonicalText($stepText) { $canonicalText = preg_replace(array_keys(self::$replacePatterns), '', $stepText); $canonicalText = Transliterator::transliterate($canonicalText, ' '); $canonicalText = preg_replace('/[^a-zA-Z\\_\\ ]/', '', $canonicalText); $canonicalText = str_replace(' ', '', ucwords($canonicalText)); return $canonicalText; }
public function updateCodes() { $settings = $this->container->get("doctrine")->getRepository("CoreBundle:UserSetting")->findAll(); $manager = $this->container->get("doctrine")->getManager(); foreach ($settings as $setting) { $setting->setCode(Transliterator::transliterate($setting->getName())); $manager->persist($setting); } $manager->flush(); }
/** * {@inheritdoc} */ public function generate($name, $parentId = null) { $taxonSlug = Transliterator::transliterate($name); if (null === $parentId) { return $taxonSlug; } /** @var TaxonInterface $parent */ $parent = $this->taxonRepository->find($parentId); Assert::notNull($parent, sprintf('There is no parent taxon with id %d.', $parentId)); return $parent->getSlug() . self::SLUG_SEPARATOR . $taxonSlug; }
public function createFilename(FeatureNode $feature, ScenarioInterface $scenario, OutlineNode $outline = null) { $filename = Transliterator::transliterate($feature->getTitle(), $this->separator) . DIRECTORY_SEPARATOR; if ($outline) { $filename .= Transliterator::transliterate($outline->getTitle(), $this->separator) . DIRECTORY_SEPARATOR . $this->separator; } $filename .= Transliterator::transliterate($scenario->getTitle(), $this->separator); if ($outline) { $filename .= $this->separator; } return $filename; }
/** * Transforms a text (for example a node title) into a valid node name by removing invalid characters and * transliterating special characters if possible. * * @param string $name The possibly invalid node name * @return string A valid node name */ public static function renderValidNodeName($name) { // Check if name already match name pattern to prevent unnecessary transliteration if (preg_match(NodeInterface::MATCH_PATTERN_NAME, $name) === 1) { return $name; } // Transliterate (transform 北京 to 'Bei Jing') $name = Transliterator::transliterate($name); // Urlization (replace spaces with dash, special special characters) $name = Transliterator::urlize($name); // Ensure only allowed characters are left $name = preg_replace('/[^a-z0-9\\-]/', '', $name); return $name; }
/** * @dataProvider provideTransliterationCases */ public function testTransliteration($input, $expected) { $this->assertSame($expected, Transliterator::transliterate($input)); }
public function testTranslit() { $url = 'это тестовый title с названием'; $this->assertSame('eto-tiestovyi-title-s-nazvaniiem', \Behat\Transliterator\Transliterator::transliterate($url)); }
/** * Returns the filename sanitized to minimize issues with various platforms * @return string the sanitized filename */ public function getSanitizedFileName() { return Transliterator::transliterate($this->_fileName) . '.' . $this->getExtension(); }
/** * Generates a slug of the text after transliterating the UTF-8 string to ASCII. * * Unaccent umlauts/accents prior to transliteration. * Uses transliteration tables to convert any kind of utf8 character. * * @param string $text * @param string $separator * * @return string $text */ public static function transliterate($text, $separator = '-') { $text = parent::unaccent($text); return parent::transliterate($text, $separator); }
/** * {@inheritdoc} */ public function setSlug($slug) { //$this->slug = $slug; if (empty($slug)) { $slug = $this->title; } $this->slug = Transliterator::transliterate($slug); return $this; }
/** * @return string */ public function getSlug() { return Transliterator::transliterate($this->getTitle()); }
/** * @param array $events * * @return string */ private function slimDownEventsForMap($events) { foreach ($events as $key => $value) { $events[$key]['startDate'] = $events[$key]['startDate']->format(\DateTime::RFC2822); $events[$key]['country'] = Intl::getRegionBundle()->getCountryName($events[$key]['country'], 'de'); if (!is_null($events[$key]['startTime'])) { $events[$key]['startTime'] = $events[$key]['startTime']->format(\DateTime::RFC2822); } $eventId = $events[$key]['id']; $eventSlug = Transliterator::transliterate($events[$key]['title']); $events[$key]['url'] = $this->routing->generate('sulu_events.detail', array('id' => $eventId, 'slug' => $eventSlug)); unset($events[$key]['id']); } return json_encode($events); }
/** * @param string $name * @return UserSetting */ public function setName(string $name) : UserSetting { $this->name = $name; $this->code = Transliterator::transliterate($name); return $this; }
/** * Decode * * @param string $value The value to decode * @return string decoded */ private function decode($value) { // convert cyrlic, greek or other caracters to ASCII characters return Transliterator::transliterate($value); }
public function createFilename(FeatureNode $feature, ScenarioInterface $scenario, OutlineNode $outline = null) { return $this->directory . DIRECTORY_SEPARATOR . Transliterator::transliterate(implode($this->separator, $scenario->getTags()), $this->separator); }
/** * Return a translitared name for a project * * @param string $projectPath Project directory * * @return string */ public function getProjectName($projectPath) { $project = basename(realpath($projectPath)); $project = Transliterator::transliterate($project, '-'); return $project; }
/** * {@inheritdoc} */ public function generate($name) { return Transliterator::transliterate($name); }