Solution for Deprecated function
iconv_set_encoding() error while Joomla
Installation in php 5.6
BY HASIB
DECEMBER
DID
14, 2014
YOU
KNOW?, JOOMLA, TIPS
&
TRICKS
If you are trying to install Joomla (or other CMS) in php 5.6 environment and encounter the error : Deprecated:
iconv_set_encoding()
I’ve got a solution for you.
The error may look like following:
Deprecated: iconv_set_encoding(): Use of iconv.internal_encoding is
deprecated in joomlaroot\libraries\joomla\string\string.php on line 27
Deprecated: iconv_set_encoding(): Use of iconv.input_encoding is
deprecated in joomlaroot\libraries\joomla\string\string.php on line 28
Deprecated: iconv_set_encoding(): Use of iconv.output_encoding is
deprecated in joomlaroot\libraries\joomla\string\string.php on line 29
Open the file string.php in “joomlaroot\libraries\joomla\string\” directory. Go to line 27.
Now change the following lines:
if (function_exists(‘iconv’))
{
// These are settings that can be set inside code
iconv_set_encoding(“internal_encoding”, “UTF8″);
iconv_set_encoding(“input_encoding”, “UTF8″);
iconv_set_encoding(“output_encoding”, “UTF8″);
}
to the following:
if (function_exists(‘iconv’) && PHP_VERSION_ID < 50600)
{
// These are settings that can be set inside code
iconv_set_encoding(“internal_encoding”, “UTF8″);
iconv_set_encoding(“input_encoding”, “UTF8″);
iconv_set_encoding(“output_encoding”, “UTF8″);
}
elseif (PHP_VERSION_ID >= 50600)
{
ini_set(‘default_charset’, ‘UTF8′);
}
This should resolve the problem and let you progress to the next level during Joomla installation.