Вот мой код, я попытался взорвать строку, но получил некоторые ошибки, у меня есть веревка, но я не взорвался, Здесь у меня есть некоторые ошибки, я не могу этого понять Произошла ошибка PHP
Severity: Warning Message: explode() expects parameter 2 to be string, object given Filename: views/testing.php Line Number: 65
Вот мой код:
<?php
foreach ($test as $t)
{
echo $t->user_rights;
$t=(explode(",", $t));
}
?>
$ test - это переменная контроллера, получить данные из базы данных
он должен иметь имя столбца, подобное этому $t->column_name
echo $ t-> user_rights; $ t = (взорвать (",", $ t));
также пробовал @pradeep, но это не сработало
Вы можете показать свои тестовые данные
да, тестовые данные печатаются в поле зрения, но я добавил взорвать, тогда он не работает
какой вывод print_r($test); покажите






Возможно, вы сможете преобразовать $ t с помощью implode ($ t). такой как: $ t = взорваться (",", взорваться ($ t));
Надеюсь, что это поможет вам :
foreach ($test as $t)
{
/* this will trigger an error since $t->user_rights is an array .
To use explode $t->user_rights should be a string
*/
$user_rights = (explode(",", $t->user_rights));
print_r($user_rights);
}
ОБНОВИТЬ :
Если вам нужны значения user_rights, разделенные запятыми, тогда вы должны использовать implode() вместо explode();
foreach ($test as $t)
{
$user_rights = implode(",", $t->user_rights);
echo $user_rights ;
}
Подробнее: http://php.net/manual/en/function.implode.php
все еще не работает, ошибка: сообщение: преобразование массива в строку
Массив ([0] => stdClass Object ([user_rights] => Array ([0] => 5 [1] => 1 [2] => 1 [3] => 1 [4] => 1 [5]] => 1 [6] => 1 [7] => 1 [8] => 1 [9] => 1 [10] => 1 [11] => 1 [12] => 1 [13] => 1 [14] => 1 [15] => 1 [16] => 1 [17] => 1 [18] => 1 [19] => 1 [20] => 1 [21] => 1 [ 22] => 1 [23] => 1 [24] => 1 [25] => 1))) да, получил его в массиве ,,,, но теперь как его распечатать
я получил такой вывод, да, это правильно, но как его распечатать сейчас Array ([0] => 5 [1] => 1 [2] => 1 [3] => 1 [4] => 1 [5]] => 1 [6] => 1 [7] => 1 [8] => 1 [9] => 1 [10] => 1 [11] => 1 [12] => 1 [13] => 1 [14] => 1 [15] => 1 [16] => 1 [17] => 1 [18] => 1 [19] => 1 [20] => 1 [21] => 1 [ 22] => 1 [23] => 1 [24] => 1 [25] => 1)
$t->user_rights имеет массив, и если вам нужны значения user_rights, разделенные запятыми, тогда вы должны использовать impload вместо explode, что вы скажете?
да, я хочу разделенные значения, так как реализовать функцию взрыва
ох спасибо дорогой
<?php
foreach ($test as $t){
$t=(explode(",",$t->user_rights));
}
?>
$ t-> user_rights должно быть строкой, а в переменной $ t вы получите массив. поэтому в соответствии с этим массивом вы можете использовать значение массива.
каково содержание $ test ???