【发布时间】:2026-01-15 08:10:02
【问题描述】:
使用以下基本 Google Sheets API 代码:
$client = getClient();
$service = new Google_Service_Sheets($client);
$spreadsheetId = 'xxxxxxxxxx';
$offersrange = 'Leads';
$offersresponse = $service->spreadsheets_values->get($spreadsheetId, $offersrange);
$offersvalues = $offersresponse->getValues();
var_dump($offersvalues);die;
我希望能够使用命名键访问数组,例如 $array[date] 和 $array[vendor]。但这里是 var_dump 输出,我正在努力理解如何将它放入可以使用命名键的数组中。
下面是 3 行工作表中的 var_dump,第 1 行是标题,第 2 行和第 3 行是示例数据。
array(3) { [0]=> array(7) { [0]=> string(4) "date" [1]=> string(6) "vendor" [2]=> string(6) "userid" [3]=> string(8) "username" [4]=> string(5) "email" [5]=> string(6) "status" [6]=> string(11) "description" } [1]=> array(7) { [0]=> string(8) "12/11/18" [1]=> string(2) "v1" [2]=> string(1) "1" [3]=> string(2) "u1" [4]=> string(2) "e1" [5]=> string(1) "0" [6]=> string(16) "test description" } [2]=> array(7) { [0]=> string(8) "12/11/18" [1]=> string(2) "v2" [2]=> string(1) "2" [3]=> string(2) "u2" [4]=> string(2) "e2" [5]=> string(1) "1" [6]=> string(11) "another one" } }
格式化的 var_dump:
(array) [3 elements]
0:
(array) [7 elements]
0: (string) "date"
1: (string) "vendor"
2: (string) "userid"
3: (string) "username"
4: (string) "email"
5: (string) "status"
6: (string) "description"
1:
(array) [7 elements]
0: (string) "12/11/18"
1: (string) "v1"
2: (string) "1"
3: (string) "u1"
4: (string) "e1"
5: (string) "0"
6: (string) "test description"
2:
(array) [7 elements]
0: (string) "12/11/18"
1: (string) "v2"
2: (string) "2"
3: (string) "u2"
4: (string) "e2"
5: (string) "1"
6: (string) "another one"
最终,我的目标是能够在我的代码中引用 $row['status'] 和 $row['date'] 等变量。
我需要基于源电子表格的名称是“动态的”,这样如果将来电子表格的列发生更改,数组名称仍然是一致的(例如,日期始终是日期,即使它不再是第一列)。
【问题讨论】:
-
什么是
(array) [3 elements]? -
即var_dump,电子表格中有3行-标题和两个样本数据行。
-
那么你格式化的
var_dump()有错字吗? -
没关系,我现在明白了。你的
var_dump()格式不是我习惯的。供将来参考echo '<pre>'; var_dump($offersvalues);将有助于避免混淆。
标签: php arrays google-api google-api-php-client