你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
ARM 模板函数
本文介绍可以在 Azure 资源管理器模板(ARM 模板)中使用的所有函数。 若要了解如何在模板中使用函数,请参阅模板语法。
若要创建自己的函数,请参阅用户定义函数。
大多数函数在部署到资源组、订阅、管理组或租户时工作方式相同。 某些函数并非可以在所有范围内使用。 下表对这些函数进行了说明。
任何函数
Bicep 中提供 any 函数可帮助解决有关数据类型警告的问题。
数组函数
Resource Manager 提供以下用于处理数组的函数。
- array
- concat
- contains
- createArray
- empty
- first
- indexOf
- intersection
- last
- lastIndexOf
- length
- max
- min
- range
- skip
- take
- union
对于 Bicep 文件,请使用数组函数。
CIDR 函数
以下函数可用于处理 CIDR。 所有这些函数都位于 sys
命名空间中。
比较函数
Resource Manager 提供了多个用于在模板中进行比较的函数。
对于 Bicep 文件,请使用联合逻辑运算符。 若要进行比较,请使用比较运算符。
日期函数
资源管理器提供了以下用于处理日期的函数。
对于 Bicep 文件,请使用日期函数。
部署值函数
Resource Manager 提供以下函数,用于从与部署相关的模板和值部分获取值:
对于 Bicep 文件,请使用部署函数。
Lambda 函数
资源管理器提供以下用于 Lambda 表达式的函数。
对于 Bicep 文件,请使用 lambda 函数。
逻辑函数
资源管理器提供以下用于处理逻辑条件的函数:
对于 Bicep 文件,请使用布尔逻辑函数。 对于其他逻辑值,请使用逻辑运算符。
数值函数
Resource Manager 提供以下用于处理整数的函数:
对于使用 int
、min
和 max
的 Bicep 文件,请使用数值函数。 对于其他数值,请使用数值运算符。
对象函数
Resource Manager 提供以下用于处理对象的函数。
对于 Bicep 文件,请使用对象函数。
Resource functions
Resource Manager 提供以下用于获取资源值的函数:
- extensionResourceId
- listAccountSas
- listKeys
- listSecrets
- list*
- pickZones
- 提供程序(已弃用)
- reference
- references
- resourceId - 可以在任何范围内使用,但有效参数会根据范围而发生变化。
- subscriptionResourceId
- tenantResourceId
对于 Bicep 文件,请使用资源函数。
作用域函数
资源管理器提供以下用于获取部署范围值的函数:
- managementGroup - 只能在部署到管理组时使用。
- resourceGroup - 只能在部署到资源组时使用。
- subscription - 只能在部署到资源组或订阅时使用。
- tenant - 可用于任何范围的部署。
对于 Bicep 文件,请使用范围函数。
字符串函数
Resource Manager 提供以下用于处理字符串的函数:
- base64
- base64ToJson
- base64ToString
- concat
- contains
- dataUri
- dataUriToString
- empty
- endsWith
- first
- format
- guid
- indexOf
- join
- json
- last
- lastIndexOf
- length
- newGuid
- padLeft
- replace
- skip
- split
- startsWith
- string
- substring
- take
- toLower
- toUpper
- trim
- uniqueString
- uri
- uriComponent
- uriComponentToString
对于 Bicep 文件,请使用字符串函数。
后续步骤
- 有关 ARM 模板中各部分的说明,请参阅了解 ARM 模板的结构和语法。
- 若要合并多个模板,请参阅部署 Azure 资源时使用链接模板和嵌套模板。
- 若要在创建资源类型时迭代指定的次数,请参阅 ARM 模板中的资源迭代。
- 若要了解如何部署已创建的模板,请参阅使用 ARM 模板和 Azure PowerShell 部署资源。