当前位置: 首页 > 面试题库 >

PHP:函数中的$ _GET和$ _POST?

酆高翰
2023-03-14
问题内容

我对代码感到不知所措,其中GET值(例如)$_GET['username']不作为函数的参数包括在内。

什么时候需要将POST和GET方法包括为函数的参数?


问题答案:

您何时需要将POST和GET方法包括为函数的参数?

我会说:“从来没有”:$_GET$_POST什么叫做超全局:他们在整个脚本存在;
这意味着它们存在于函数/方法中。

特别是,您不需要global那些关键字。

但是,依靠函数/方法中的那些方法还是很不习惯的:您的函数/方法通常不应该依赖未作为参数传递的任何内容。

我的意思是; 考虑这两个功能:

function check_login_password()
{
    $login = $_GET['login'];
    $password = $_GET['password'];
    // Work with $login and $password
}

/**
 * Check login and password
 *
 * @param $login string
 * @param $password string
 * @return boolean
 */
function check_login_password($login, $password)
{
    // Work with $login and $password
}

好的,在第一个参数中,您不必传递两个参数…但是该函数将不是独立的,并且在您必须检查几个登录名/密码不正确的情况下也不起作用。来自$_GET

通过第二个功能,调用者负责传递正确的参数;这意味着它们可以来自任何您想要的地方:该功能将始终能够完成其工作。



 类似资料:
  • 问题内容: 当我尝试在其他PHP服务器上运行脚本时,出现了一个新问题。 在我的旧服务器上,即使未声明任何参数,以下代码也可以正常工作。 但是现在,在本地计算机(XAMPP-Apache)上的本地服务器上,如果未定义for的值,则会出现以下错误。 如果为声明了值,但脚本要调用某些javascript函数会发生什么,但是如果未声明任何内容,我希望页面能够正常加载。 你能帮助我吗? 问题答案: 错误报告

  • 主要内容:$_GET 变量,何时使用 method="get"?在 PHP 中,预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。 $_GET 变量 预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。 从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。 实例 form.html 文件代码如下: 当用户点击 "Submit" 按钮时,发送到服

  • 问题内容: 是否可以将值作为数组输入? 如果我尝试使用发送链接,而我想在php端使用,那么该值如何成为数组?因为现在正在返回。它是标题链接中的最后一个ID。有什么建议么? 问题答案: 在PHP中执行此操作的通常方法是输入您的URL而不是: 然后将是这些值的数组。它不是特别漂亮,但是可以直接使用。

  • 问题内容: 如果我通过$ _GET 传递名称为PHP变量的PHP,则会自动用字符替换它们。例如: …输出以下内容: …我的问题是:有 什么 办法可以阻止我?无法为我的一生弄清我应做的一切 我运行的PHP版本是5.2.4-2ubuntu5.3。 问题答案: 这是PHP.net对其执行原因的解释: 传入变量名称中的点 通常,当将变量传递到脚本中时,PHP不会更改变量的名称。但是,应注意,点(句点,句号

  • 问题内容: 我该如何编写两个函数,这些函数将接受字符串并以指定的字符/字符串开头或以指定的字符串结尾? 例如: 问题答案: 如果您不想使用正则表达式,请使用此选项。

  • 问题内容: 如何通过$ _GET将数组类型的一个或多个变量传递给另一页? 我总是以以下形式传递变量值 那传球呢? 我是否需要编写一个for循环并附加所有值? 谢谢 问题答案: 您可以使用语法通过_GET传递数组: PHP理解此语法,因此等于。 您还可以指定键: 多维数组也可以工作: 自动执行此操作: 一种替代方法是传递json编码的数组: 您可以解析为: 并再次使用json_encode对其进行编