2015-02-04 2 views
2

Я хотел бы использовать пакетное обновление API-интерфейсов Google, потому что вызовы для обновления отдельных ячеек чрезвычайно медленны. Проблема в том, что ячейки, у которых нет данных, не возвращаются как часть фида для ячеек, поэтому у меня нет нужного URL-адреса редактирования, чтобы включать эти ячейки в пакетное обновление. Я видел ссылку на параметр «return-empty» в API Google .NET, который предположительно вернет все ячейки, даже пустые ячейки, в фид ячеек, но я не могу найти ссылку на это для API протокола. используя в PHP (здесь приведен пример ссылки на параметр «return-empty»: Writing to an empty cell in Google Spreadsheets). Кто-нибудь знает, как получить запрос на подачу ячейки для возврата всех ячеек (включая пустые ячейки)? Или я обречен использовать чрезмерно медленные запросы на обновление ячейки?Пакетное обновление API-интерфейсов Google (PHP)

+0

Если вы используете тот же API, что и я, то у меня есть ответ для вас. – Geoff

ответ

0

Быстрый Hack

Если вы используете same API I am, то в googlespraedsheet/api.php в line 152 после

$cellRangeCriteriaQuerystringList = []; 

Вы можете добавить:

$cellRangeCriteriaQuerystringList[] = "return-empty=true"; 

лучший способ

Там в лучший способ, который я добавил в своем собственном fork. Я создал pull request.

Если вы работаете с моей вилкой (или если запрос на растяжение принят), вы можете просто добавить 'returnEmpty' => true в ваш $cellRange. Например:

$cellList = $spreadsheetAPI->getWorksheetCellList(
        $spreadsheetKey, 
        $worksheetID, 
        ['rowStart' => $rowStart, 
        'rowEnd' => $rowEnd, 
        'returnEmpty' => true]); 
+0

Привет, Джефф, у меня есть такие данные $ data = [['' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ',' ContactNo '=>' 12345 '], [' Date '=>' 2016-02-03 ',' Name '=>' test3 ',' Email '=>' [email protected] ',' ContactNo '=>' 12345 '], [' Дата '=>' 2016-02-04 ',' Name '=>' test4 ',' Email '=>' [email protected] ',' ContactNo '=>' 12345 '],] Как мудрый У меня есть массив из 100 записей, и я хочу, чтобы пакет обновления данных, и если нет записи для конкретной даты, то нужно вставить. Это позволяет достичь этого? Есть идеи? –

Смежные вопросы