На что похож код хорошего программиста? [закрытый]

Примечание: Преобразование в строковое преобразование

Это происходит просто, если вы пытаетесь рассматривать массив как строку:

$arr = array('foo', 'bar');

echo $arr;  // Notice: Array to string conversion
$str = 'Something, ' . $arr;  // Notice: Array to string conversion

Массив не может быть просто echo 'd или конкатенируется с строкой, потому что результат не определен. PHP будет использовать строку «Array» вместо массива и вызвать уведомление, чтобы указать, что это, вероятно, не то, что было предназначено, и что вы должны проверять свой код здесь. Вероятно, вы захотите что-то вроде этого:

echo $arr[0];  // displays foo
$str = 'Something ' . join(', ', $arr); //displays Something, foo, bar

Или зациклируйте массив:

foreach($arr as $key => $value) {
    echo "array $key = $value";
    // displays first: array 0 = foo
    // displays next:  array 1 = bar
}

Если это уведомление появляется где-то, чего вы не ожидаете, это означает переменную, которую вы мысль - это строка, на самом деле это массив. Это означает, что у вас есть ошибка в коде, которая делает эту переменную массивом вместо ожидаемой строки.

87
задан 7 revs, 6 users 53% 1 December 2017 в 21:15
поделиться

31 ответ

Если Вы пишете код C++, существует очень хорошая книга с превосходными стандартами кодирования, к которым мы обращаемся в названном uni: " Стандарты Кодирования C++: 101 правило, Инструкции и Лучшие практики " Herb Sutter, Andrei Alexandrescu и Bjarne Stroustrup.

0
ответ дан Brock Woolf 24 November 2019 в 07:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: