Как найти то, в чем находится ManualResetEvent состояния?

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

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

$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
}

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

68
задан Yves M. 7 January 2015 в 10:54
поделиться

1 ответ

Выполните WaitOne на событии со значением тайм-аута нуля.

Это возвратит true, если событие будет установлено, или ложь, если тайм-аут происходит. Другими словами, верный-> событие установлено, ложь->, событие не установлено.

85
ответ дан Andrew Rollings 24 November 2019 в 14:20
поделиться
Другие вопросы по тегам:

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