У меня есть значение массива, сохраненное в базе данных, как показано ниже;
$databasearray = a_name.pdf,b_name.pdf,c_name.zip
и в моем контроллере я пытаюсь обновить базу данных значениями, которые выбирает пользователь;
[РЕДАКТИРОВАТЬ] {Мой код содержит переменные и массив ()
//my Database Value
//load data for current item
$model = Mage::getModel('things/things')->load($this->getRequest()->getParam('id'))
$array1 = array($model->getDatabaseValue());//a_name.pdf,b_name.pdf,c_name.zip
//my selected values from admin form fieldset (checkbox[])(from database array value)
$array2 = array($this->getRequest()->getParam('to_delete'));//a_name.pdf,b_name.pdf
$results = array_diff($array1, $array2);
//save new array value with selected values removed
$savemodel->saveDatabaseValue(implode(',', $results));
Проблема в том, что сохраняются новые значения, они совпадают с исходным значением, и это так, как будто array_diff () не работает, как и дамп $ array1 & $ array2 Я вижу, что это разные значения.
implode(',', $results)); outputs all values and does not remove $array2 values even though $array2 has values from $array1
любая причина, почему значения не вставляются / удаляются из array_diff? Я полагаю, взорваться / взорваться где-то еще в случае?
Задача ещё не решена.
Других решений пока нет …