My personal solution is delete the worksheet and recreate
// service
$spreadsheetService = new Google\Spreadsheet\SpreadsheetService();
$spreadsheetFeed = $spreadsheetService->getSpreadsheetFeed();
// retrieve a list of worksheets from a spreadsheet
$spreadsheet = $spreadsheetFeed->getByTitle('Spreadsheet');
$worksheetFeed = $spreadsheet->getWorksheetFeed();
// get the worksheet you want to empty
$worksheet = $worksheetFeed->getByTitle('EmptySheet');
// delete the worksheet
$worksheet->delete();
// recreate the worksheet to be sure it's empty
$spreadsheet->addWorksheet('EmptySheet', rows, column);
Edit
Or use the batchUpdate with empty param userEnteredValue
. Look at https://developers.google.com/sheets/api/samples/sheet#clear_a_sheet_of_all_values_while_preserving_formats