You are here

private function FillInProcessor::replacePlaceholders in Opigno module 8

Same name and namespace in other branches
  1. 3.x ActivityTypes/opigno_h5p/src/TypeProcessors/FillInProcessor.php \Drupal\opigno_h5p\TypeProcessors\FillInProcessor::replacePlaceholders()

Fill in description placeholders with replacements.

Parameters

string $description: Description.

array $placeholderReplacements: Replacements for placeholders in description.

Return value

string Description with replaced placeholders.

1 call to FillInProcessor::replacePlaceholders()
FillInProcessor::buildReportOutput in ActivityTypes/opigno_h5p/src/TypeProcessors/FillInProcessor.php
Build report.

File

ActivityTypes/opigno_h5p/src/TypeProcessors/FillInProcessor.php, line 341

Class

FillInProcessor
Class FillInProcessor.

Namespace

Drupal\opigno_h5p\TypeProcessors

Code

private function replacePlaceholders($description, array $placeholderReplacements) {
  $replacedDescription = $description;

  // Determine position of next placeholder and the corresponding
  // replacement index.
  $index = 0;
  $nextPos = strpos($replacedDescription, self::FILL_IN_PLACEHOLDER, 0);
  while ($nextPos !== FALSE) {

    // Fill in placeholder in description with replacement.
    $replacedDescription = substr_replace($replacedDescription, $placeholderReplacements[$index], $nextPos, strlen(self::FILL_IN_PLACEHOLDER));

    // Determine position of next placeholder and the corresponding
    // replacement index.
    $nextPos = strpos($replacedDescription, self::FILL_IN_PLACEHOLDER, $nextPos + strlen($placeholderReplacements[$index]));
    $index += 1;
  }
  return $replacedDescription;
}