ich von meiner MySQL-Datenbank
durch Verweis ein Array ändern
Array
(
[0] => Array
(
[page] => categorypropose
[value] => baby-sitters
[id] => 357960
)
[1] => Array
(
[page] => categorysearch
[value] => adéquate pour garder
[id] => 357961
)
...
)
, ein mehrdimensionales Array Ich habe über eine ‚hausgemachte‘ Funktion „Loadtext zu tun einige ISO-8859-1 zu UTF8 Konvertierung In diesem Array erhalten ".
Aber wenn ich dies tun:
$array = $query->result_array();
foreach($array as &$k)
{
foreach ($k as &$value)
{
//Works
$value = $this->loadtext($value, 'ISO-8859-1');
}
}
//Back to normal as $this->loadtext never existed
print_r($array);
Es ist nicht die Änderungen nicht erhalten (Wenn ich $ Wert Echo, es funktioniert, aber die Änderung ist nicht am Ende gehalten ...)
EDIT: Dies ist die Funktion Loadtext, die ich verwenden werde verpflichten (tatsächlich, ich habe es nicht geschafft, aber ich habe es zu benutzen ...)
function loadtext($text,$charset){
$text = stripslashes($text);
if($charset!="UTF-8")
$text = iconv("UTF-8",$charset,$text);
$text = str_replace(" :"," :",$text);
$text = str_replace(" ;"," ;",$text);
$text = str_replace(" !"," !",$text);
$text = str_replace(" ?"," ?",$text);
$text = str_replace(" ."," .",$text);
$text = str_replace(" …"," …",$text);
return $text;
}
ich ein paar mehr Debugging Dinge hinzufügen würde - eine 'print_r' und eine andere in der„outter“Schleife. Und testen Sie, ob Sie nur '$ array = array (array (1, 2, 3), array (4, 5, 6))' und '$ value = $ value * 2' zum Testen verwenden. – Raekye