Gets the values in a row of the result set in the form of a string list.
public static GetRowStringValues ( Row $row ) : array | ||
$row | Row | the row to get the values for |
리턴 | array | the string list of row labels |
/** * Fetches a match table from a PQL statement and writes it to a file. */ function fetchMatchTable($statementBuilder, $pqlService, $fileName) { $resultSet = null; $combinedResultSet = null; do { $resultSet = $pqlService->select($statementBuilder->ToStatement()); // Combine result sets with previous ones. $combinedResultSet = !isset($combinedResultSet) ? $resultSet : Pql::CombineResultSets($combinedResultSet, $resultSet); $statementBuilder->IncreaseOffsetBy(StatementBuilder::SUGGESTED_PAGE_LIMIT); } while (isset($resultSet->rows) && count($resultSet->rows) > 0); // Change to your file location. $filePath = sprintf("%s/%s-%s.csv", sys_get_temp_dir(), $fileName, uniqid()); $fp = fopen($filePath, 'w'); // Write the result set to a CSV. fputcsv($fp, Pql::GetColumnLabels($combinedResultSet)); foreach ($combinedResultSet->rows as $row) { fputcsv($fp, Pql::GetRowStringValues($row)); } fclose($fp); return $filePath; }
$statementBuilder = new StatementBuilder(); $statementBuilder->Select('Id, BrowserName, MajorVersion, MinorVersion')->From('Browser')->OrderBy('BrowserName ASC')->Limit(StatementBuilder::SUGGESTED_PAGE_LIMIT); // Default for result sets. $resultSet = null; $combinedResultSet = null; $i = 0; do { // Get all browsers. $resultSet = $pqlService->select($statementBuilder->ToStatement()); // Combine result sets with previous ones. $combinedResultSet = !isset($combinedResultSet) ? $resultSet : Pql::CombineResultSets($combinedResultSet, $resultSet); printf("%d) %d browsers beginning at offset %d were found.\n", $i++, isset($resultSet->rows) ? count($resultSet->rows) : 0, $statementBuilder->GetOffset()); $statementBuilder->IncreaseOffsetBy(StatementBuilder::SUGGESTED_PAGE_LIMIT); } while (isset($resultSet->rows) && count($resultSet->rows) > 0); // Change to your file location. $filePath = sprintf("%s/Browsers-%s.csv", sys_get_temp_dir(), uniqid()); $fp = fopen($filePath, 'w'); // Write the result set to a CSV. fputcsv($fp, Pql::GetColumnLabels($combinedResultSet)); foreach ($combinedResultSet->rows as $row) { fputcsv($fp, Pql::GetRowStringValues($row)); } fclose($fp); printf("Browsers saved to %s\n", $filePath); } catch (OAuth2Exception $e) { ExampleUtils::CheckForOAuth2Errors($e); } catch (ValidationException $e) { ExampleUtils::CheckForOAuth2Errors($e); } catch (Exception $e) { printf("%s\n", $e->getMessage()); }
/** * @covers Pql::GetRowStringValues */ public function testGetRowStringValues() { $row = new Row(array($this->textValue1, $this->booleanValue1, $this->numberValue1)); $this->assertEquals(array('hello world', 'false', '2'), Pql::GetRowStringValues($row)); }