View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
17472 | Bug reports | _ Unknown | public | 2021-07-24 17:31 | 2021-07-26 13:17 |
Reporter | uibklime1 | Assigned To | galads | ||
Priority | none | Severity | minor | ||
Status | confirmed | Resolution | open | ||
Product Version | 3.25.20 | ||||
Summary | 17472: PHP 7.3 complains of deprecated code | ||||
Description | With debugging enabled, we get the following errors on a regular basis: stripos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior (.../application/helpers/questionHelper.php:1613) | ||||
Steps To Reproduce | I don't know WHEN this happens, as I'm not the user, only the site admin. But it appears to happen on our side 20x+ times per day. | ||||
Additional Information | Code at https://github.com/LimeSurvey/LimeSurvey/blob/3.x-LTS/application/helpers/questionHelper.php#L1614 reads
I'm guessing this needs to be :
From php manual: Prior to PHP 8.0.0, if needle is not a string, it is converted to an integer and applied as the ordinal value of a character. This behavior is deprecated as of PHP 7.3.0, and relying on it is highly discouraged. Depending on the intended behavior, the needle should either be explicitly cast to string, or an explicit call to chr() should be performed. | ||||
Tags | No tags attached. | ||||
Bug heat | 0 | ||||
Complete LimeSurvey version number (& build) | 3.22.4+200212 and current in git | ||||
I will donate to the project if issue is resolved | No | ||||
Browser | |||||
Database type & version | mysql 5.7 | ||||
Server OS (if known) | |||||
Webserver software & version (if known) | |||||
PHP Version | 7.3.24 | ||||