Piwik \

常见的

包含Matomo(以前的Piwik)核心和Matomo跟踪引擎使用的辅助方法。

类加载的唯一非跟踪器类\ / piwik.php文件。

方法

该类定义了以下方法:

prefixTable ()

返回带前缀的表名。

表前缀由(数据库)tables_prefixINI配置选项。

签名

  • 它接受以下参数:

    • 美元的表字符串) -表名的前缀,即“log_visit”
  • 返回:字符串-前缀名称,即“piwik-production_log_visit”。

unprefixTable ()

从表名中删除前缀并返回结果。

表前缀由(数据库)tables_prefixINI配置选项。

签名

  • 它接受以下参数:

    • 美元的表字符串) -带前缀的表名,例如“piwik-production_log_visit”。
  • 返回:字符串-无前缀表名,如“log_visit”。

sanitizeInputValues ()

清除字符串以帮助避免XSS漏洞。

getRequestVar ()调用,因此通常不必使用它。

当输出未转义且从用户处获得的数据时,应该使用此函数(例如在使用|生目标名称上的树枝过滤器)。

注意:不应该在SQL查询中直接使用经过消毒的输入;仍然应该使用SQL占位符。

实现细节

  • htmlspecialchars函数用于转义文本。
  • 单引号没有转义Piwik很棒的社区仍然会是Piwik很棒的社区
  • 的使用magic_quotes设置不会破坏此方法。
  • 布尔值、数字值和空值不被修改。

签名

  • 它接受以下参数:

    • 美元的价值混合) -要消毒的变量。如果提供了数组,则将递归地清除数组的内容。数组的键也将被清除。
    • alreadyStripslashed美元保龄球) -实现细节,忽略。
  • 返回:混合—已消毒的值。

  • 它会抛出以下异常之一:
    • 异常——如果美元的价值类型不正确。

unsanitizeInputValue ()

清除单个输入值并返回结果。

签名

  • 它接受以下参数:

    • 美元的价值字符串) - - -
  • 返回:字符串-未消毒的输入

unsanitizeInputValues ()

取消消毒一个或多个值并返回结果。

当需要对从用户获得的数据进行反转义时,应该使用此方法。

Matomo中的一些数据是经过消毒存储的(例如站点名称)。在这种情况下,您可能必须使用此方法对其进行反消毒,例如,以JSON格式输出它。

签名

  • 它接受以下参数:

    • 美元的价值字符串|数组) -需要消毒的数据。如果传递了一个数组,则递归地清除该数组。键值不是未消毒的。
  • 返回:字符串|数组—未消毒的数据。

getRequestVar ()

控件中按名称获取已处理的请求参数$ _GET而且$ _POST已经。

使用此函数获取请求参数值。从来没有使用$ _GET而且$ _POST直接。

如果找不到变量,并且没有提供默认值,则会引发异常。

看到sanitizeInputValues ()了解更多有关消毒的知识。

另请参阅

  • 要求::getParameter ()

签名

  • 它接受以下参数:

    • varName美元字符串-要获取的请求参数的名称。默认情况下,我们向内看$ _GET [$ varName]而且$ _POST [$ varName]求值。
    • varDefault美元字符串|-如果找不到请求参数或为空值时返回的值。
    • varType美元字符串|-请求变量的期望类型。该参数值必须为以下值之一:“数组”“int”“整数”“字符串”json的.如果json的,则字符串值为json_decode-d,然后消毒。
    • requestArrayToUse美元数组|) -要代替的数组$ _GET而且$ _POST
  • 返回:混合—已消毒请求参数。

  • 它会抛出以下异常之一:
    • 异常—如果请求参数不存在且没有默认值,或者请求参数存在但类型错误。

getSqlStringFieldsArray ()

返回一个字符串,其中有一个逗号分隔的占位符列表,用于SQL查询。主要用于填充“IN”。

..)的查询部分。

签名

  • 它接受以下参数:

    • 美元的字段数组|字符串要绑定的mysql表字段的名称。数组(fieldName1, fieldName2, fieldName3)注意:数组的内容并不重要,重要的是它的长度。
  • 返回:字符串-占位符字符串,例如:"?,?, ?"

destroy ()

将孤立对象标记为垃圾收集。

欲了解更多信息:https://github.com/piwik/piwik/issues/374

签名

  • 它接受以下参数:
    • $ var混合-要摧毁的对象。
  • 它不返回任何东西,也不返回混合结果。
Baidu