Seules les références de variables doivent être renvoyées par reference-Codeigniter
Après la mise à niveau du serveur PHP, je reçois l'erreur suivante avec la Version PHP 5.6.2 sur Apache 2.0
A PHP Error was encountered
Severity: Notice
Message: Only variable references should be returned by reference
Filename: core/Common.php
Line Number: 257
Comment puis-je résoudre ce problème?
4 réponses
Modifier le nom du fichier: core / Common.php, numéro de ligne: 257
Avant
return $_config[0] =& $config;
Après
$_config[0] =& $config;
return $_config[0];
Mettre à jour
Ajouté par NikiC
En PHP, les expressions d'affectation renvoient toujours la Valeur assignée. Donc $_config[0] =& $config retourne $config - mais pas la variable elle-même, mais une copie de sa valeur. Et retourner une référence à une valeur temporaire ne serait pas particulièrement utile(la Changer ne ferait rien).
Mettre à jour
Ce correctif a été fusionné dans CI 2.2.1 ( https://github.com/bcit-ci/CodeIgniter/commit/69b02d0f0bc46e914bed1604cfbd9bf74286b2e3). Il est préférable de mettre à niveau plutôt que de modifier les fichiers du framework de base.
Changer noyau / commun.php numéro de ligne: 257 code avec
$_config[0] =& $config;
return $_config[0];
Cela a été modifié dans codeigniter 2.2.1...généralement pas la meilleure pratique pour modifier les fichiers de base, je vérifierais toujours les mises à jour et 2.2.1 est sorti en Janvier 2015
Ce n'est pas une meilleure idée de remplacer le noyau.fichier commun de codeigniter. Parce que ce sont les fichiers plus testés et système....
Je fais une solution à ce problème. Dans votre ckeditor_helper.fichier php ligne- 65
if($k !== end (array_keys($data['config']))) {
$return .= ",";
}
Changez ceci en-- >
$segment = array_keys($data['config']);
if($k !== end($segment)) {
$return .= ",";
}
Je pense que c'est la meilleure solution et que votre avis de problème disparaîtra.