public function replaceString($string, $arraySeparator = ', ') { if (!$this->submission->fieldsubmissions) { $this->submission->getFieldsubmissions(); } $string = preg_replace_callback('/\\$\\$(.+?)\\$\\$/is', function ($matches) use($arraySeparator) { $placeholder = explode(':', trim($matches[1]), 2); if (empty($placeholder[1]) || !isset($this->submission->fieldsubmissions[$placeholder[0]]) || !isset($this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]])) { return ''; } return is_array($this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]) ? implode($arraySeparator, $this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]) : $this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]; }, $string); return $string; }
public function replaceString($string, $arraySeparator = ', ') { if (!$this->submission->fieldsubmissions) { $this->submission->getFieldsubmissions(); } $string = preg_replace_callback('/\\$\\$(.+?)\\$\\$/is', function ($matches) use($arraySeparator) { $placeholder = explode(':', trim($matches[1]), 2); if (!empty($placeholder[1]) && $placeholder[0] == 'submission' && property_exists($this->submission, $placeholder[1])) { $key = $placeholder[1]; return $key == 'created' ? $this->submission->{$key}->format('Y-m-d H:i:s') : $this->submission->{$key}; } if (empty($placeholder[1]) || !isset($this->submission->fieldsubmissions[$placeholder[0]]) || !isset($this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]])) { return ''; } return is_array($this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]) ? implode($arraySeparator, $this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]) : $this->submission->fieldsubmissions[$placeholder[0]][$placeholder[1]]; }, $string); return $string; }