PHP warning

Illegal string offset 'answer'

/data/webdev/master/application/helpers/admin/export/SurveyObj.php(130)

118 
119             case Question::QT_R_RANKING_STYLE:   //RANKING TYPE
120                 $fullAnswer = $answer;
121                 break;
122 
123             case Question::QT_1_ARRAY_MULTISCALE:   //Array dual scale
124                 if (mb_substr($fieldName, -1) == 0) {
125                     $answers = $this->getAnswers($questionId, 0);
126                 } else {
127                     $answers = $this->getAnswers($questionId, 1);
128                 }
129                 if (array_key_exists($answerCode, $answers)) {
130                     $fullAnswer = $answers[$answerCode]['answer'];
131                 } else {
132                     $fullAnswer = null;
133                 }
134                 break;
135 
136             case Question::QT_L_LIST_DROPDOWN:   //DROPDOWN LIST
137             case Question::QT_EXCLAMATION_LIST_DROPDOWN:
138                 if (mb_substr($fieldName, -5, 5) == 'other') {
139                     $fullAnswer = $answerCode;
140                 } else {
141                     if ($answerCode == '-oth-') {
142                         $fullAnswer = $translator->translate('Other', $sLanguageCode);

Stack Trace

#0
+
 /data/webdev/master/application/helpers/admin/export/Writer.php(185): SurveyObj->getFullAnswer("91424X16X285SQ01#1", "A2", Translator, "fr")
180      * @return string
181      */
182     public function getLongAnswer(SurveyObj $oSurvey, FormattingOptions $oOptions, $fieldName, $sValue)
183     {
184         return $this->transformResponseValue(
185             $oSurvey->getFullAnswer($fieldName, $sValue, $this->translator, $this->languageCode),
186             $oSurvey->fieldMap[$fieldName]['type'],
187             $oOptions,
188             $fieldName
189         );
190     }
#1
+
 /data/webdev/master/application/helpers/admin/export/Writer.php(323): Writer->getLongAnswer(SurveyObj, FormattingOptions, "91424X16X285SQ01#1", "A2")
318             foreach ($oOptions->selectedColumns as $column) {
319                 $value = $aResponse[$column];
320                 if (isset($oSurvey->fieldMap[$column]) && $oSurvey->fieldMap[$column]['type'] != 'answer_time' && $oSurvey->fieldMap[$column]['type'] != 'page_time' && $oSurvey->fieldMap[$column]['type'] != 'interview_time') {
321                     switch ($oOptions->answerFormat) {
322                         case 'long':
323                             $elementArray[] = $this->getLongAnswer($oSurvey, $oOptions, $column, $value);
324                             break;
325                         default:
326                         case 'short':
327                             $elementArray[] = $this->getShortAnswer($oSurvey, $oOptions, $column, $value);
328                             break;
#2
+
 /data/webdev/master/application/helpers/admin/exportresults_helper.php(108): Writer->write(SurveyObj, "fr", FormattingOptions, true)
103         $surveyDao = new SurveyDao();
104         $survey = $surveyDao->loadSurveyById($iSurveyId, $sLanguageCode, $oOptions);
105         $writer->init($survey, $sLanguageCode, $oOptions);
106         
107         $surveyDao->loadSurveyResults($survey, $oOptions->responseMinRecord, $oOptions->responseMaxRecord, $sFilter, $oOptions->responseCompletionState, $oOptions->selectedColumns, $oOptions->aResponses);
108         $writer->write($survey, $sLanguageCode, $oOptions, true);
109         $result = $writer->close();
110         
111         // Close resultset if needed
112         if ($survey->responses instanceof CDbDataReader) {
113             $survey->responses->close();
2021-07-06 09:44:32 nginx/1.14.2 Yii Framework/1.1.24-dev