Ошибка Parserjson: должна быть массива типа, указан строка?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Ошибка Parserjson: должна быть массива типа, указан строка?

Сообщение Anonymous »

Я столкнулся с проблемой, которая возникает, когда я передаю данные в массив, который не соответствует требованиям. Я понятия не имею, как его использовать. Не могли бы вы помочь мне с этим? трассировка:
#0
d:\ downloads\ drawflow\conditionscript.php(89): array_push ('hello',
'worl@example.co...')
#1
d:drownloads\rawflow\conditionscript.php взял? /> {main} брошен в D: \ Downloads \ Dlailflow \ CondersStuccript.php On Line 89 < /p>
< /blockquote>
{
$table = [
'process' => [
'label' => [
0 => 'hello'
],
'type' => [
0 => 'hello'
],
'value' => [
0 => 'hello'
],
],
'start' => [
'label' => [
0 => 'hello'
],
'type' => [
0 => 'hello'
],
'value' => [
0 => 'hello'
],
],
'conditions' => [
'field' => [
0 => 'hello'
],
'type' => [
0 => 'hello'
],
'value' => [
0 => 'hello'
],
],
'end' => [
''
]
];

$id = 1;
if (isset($json['drawflow']['Home']['data'])) {
foreach ($json['drawflow']['Home']['data'] as $node) {
if ($node['name'] === 'condition' && isset($node['data']['conditions'])) {
foreach ($node['data']['conditions'] as $item) {
array_push($table['conditions']['field'], $item['field']);
array_push($table['conditions']['type'], $item['type']);
if (isset($item['value'])) {
array_push($table['conditions']['value'], $item['value']);
}
echo $table['conditions']['field'][$id];
echo $table['conditions']['type'][$id];
if (isset($item['value'])) {
$table['conditions']['value'] = $item['value'];
}
$id++;
}
}
if ($node['name'] === 'process' && isset($node['data']['fields'])) {
foreach ($node['data']['fields'] as $item) {
if (isset($item['label']) || isset($item['type'])) {
array_push($table['process']['label'], $item['label']);
array_push($table['process']['type'], $item['type']);
}
if (isset($item['value'])) {
array_push($table['process']['value'], $item['value']);
}
echo $table['process']['label'][$id];
echo $table['process']['type'][$id];
if (isset($item['value'])) {
$table['process']['value'] = $item['value'];
}
$id++;
}
}
if ($node['name'] === 'start' && isset($node['data']['fields'])) {
foreach ($node['data']['fields'] as $item) {
if (isset($item['label']) || isset($item['type'])) {
array_push($table['start']['label'], $item['label']);
array_push($table['start']['type'], $item['type']);
}
if (isset($item['value'])) {
array_push($table['start']['value'], $item['value']);
}
echo $table['start']['label'][$id];
echo $table['start']['type'][$id];
if (isset($item['value'])) {
$table['start']['value'] = $item['value'];
}
$id++;
}
}
}
}

< /code>
Я попытался решить его, но я не понимаю, в чем проблема, если другие данные пройдут, а это не < /p>
$ json -> включает файл json: < /p>


Подробнее здесь: https://stackoverflow.com/questions/796 ... ring-given
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»