一个 $_GET 输入参数,它是一个数组

2024-02-15

我正在尝试将 3 个参数传递给脚本,其中第三个参数$_GET['value3']应该是一个数组

$_GET['value1'] 
$_GET['value2'] 
$_GET['value3'] //an array of items

我这样调用脚本:(注意我的语法value3,我不确定这是否正确)

http://localhost/test.php?value1=test1&value2=test2&value3=[the, array, values]

然后我使用 foreach 希望循环遍历第三个参数value3这是数组

//process the first input $_GET['value1']

//process the second input $_GET['value2']

//process the third input $_GET['value3'] which is the array
foreach($_GET['value3'] as $arrayitem){
    echo $arrayitem; 
}

但我得到了错误Invalid argument supplied for foreach()

我不确定我的方法是否正确。有人可以澄清一下你会如何做这类事情吗


不存在“将数组作为 URL 参数传递”(或表单值,就此而言,因为这是同一件事)这样的事情。这些是字符串,除此之外发生在它们身上的任何事情都是内置在应用程序服务器中的魔法,因此它是不可移植的。

PHP恰好支持&value3[]=the&value3[]=array&value3[]=values自动创建的符号$_GET['value3']作为一个数组,但这对于 PHP 来说是特殊的,在其他地方不一定有效。

您也可以直接选择更简洁的 URL,如下所示:value3=the,array,values,然后使用explode(',', $_GET['value3'])在 PHP 脚本中创建一个数组。当然,这意味着您的分隔符不能是该值的一部分。

要通过 HTTP 明确传输结构化数据,请使用为此目的而制定的格式(即:JSON),然后使用json_decode()在 PHP 方面。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一个 $_GET 输入参数,它是一个数组 的相关文章

随机推荐

  • 如何在不使用 QtCreator 的情况下将 dll 文件复制到 Qt 中的输出目录?

    我有一个基于 Qt 的应用程序 它使用许多在项目外部构建的 dll 这些 dll 被签入源代码 因为我们不会非常频繁地重建它们 它们需要几个小时才能构建 我不希望它们出现在主项目中 我想在构建完成后将这些 dll 复制到适当的目录 发布 调
  • Powershell 表达式没有给出结果

    我创建了一个应返回 OU 规范名称的表达式 一个小轮廓 Search ADAccount LockedOut UsersOnly Select Object Name SamAccountName Name OU Expression Ge
  • 在 Django 中将变量从模板传递到视图的更有效方法是什么?

    我的问题涉及将变量从模板传递到 Django 中查看 我知道如何在 URL 中以及通过表单传递变量 我遇到的第一个问题是 url 可以被操纵 这不是我想要的 有什么办法可以防止这种情况发生吗 现在这就是我的创可贴
  • 如何编写一个使用 image magick 将图像切成碎片的 bash 脚本?

    我有许多输入图像 其中包含多个较小的图像 所有图像都位于一行中 所有包含的图像尺寸相同 因此 例如 图像input png may be 480x48并包含 1048x48图像 全部排成一排 使用imagemagickconvert工具 或
  • 卸载App后如何删除数据?

    我正在开发一个 Android 应用程序 它在 SD 卡中创建一个文件夹并存储一些图像 我想在卸载应用程序时删除该文件夹 请指导我 简单 不可能 目前 当您自己的应用程序被卸载时 不会触发卸载事件 因此你无法以任何方式对此做出反应 唯一的例
  • jQuery/Ajax 加载的 DOM 脚本何时实际执行?

    好吧 我觉得问这个问题有点愚蠢 类似问题有很多点击 但我似乎无法回答正确 如果我通过 jQuery Ajax 修改 DOM 加载的脚本何时实际解析 执行 下面的代码适用于 F F 但不适用于 Chrome 或 Opera 工作 意味着它执行
  • App Engine 无缓存 JSP

    我想在我的 Google 应用引擎网站上禁用 JSP 文件的缓存 我有这个
  • SIMD 或非 SIMD - 跨平台

    我需要一些想法如何编写一些可并行问题的 C 跨平台实现 以便我可以利用 SIMD SSE SPU 等 如果可用 我希望能够在运行时在 SIMD 和非 SIMD 之间切换 您建议我如何解决这个问题 当然我不想针对所有可能的选项多次实现该问题
  • 如何在java servlet中限制上传速度?

    我正在开发一个应用程序 基于 Spring 作为 DI 和 MVC 框架 该应用程序具有文件上传功能 该功能当前使用 Spring Multipart Upload 实现 反过来又利用公共文件上传库 所以我正在寻找一种降低上传带宽消耗的方法
  • 在 ngx-bootstrap 模式中向 onHide 事件发送参数

    我正在使用组件作为模板打开一个模式 一切正常 模式打开 我正在订阅 onHide 事件 订阅也有效 但我在这里面临一个挑战 我想发送一个特定的原因 例如 消息添加成功 作为原因 我怎样才能做到这一点 如何发送特定字符串作为原因 目前 我尝试
  • 正则表达式非贪婪是贪婪

    我有以下文字 tooooooooooooon 根据我正在读的这本书 当 跟在任何量词之后 它就变得非贪婪的 我的正则表达式to n仍在返回tooooooooooooon 它应该返回ton不应该吗 知道为什么吗 正则表达式只能匹配实际存在的文
  • 尝试注销 django 时出现运行时错误

    当我尝试从 django 项目注销时 出现以下错误 调用 Python 对象时超出最大递归深度 这是注销按钮的 URL url r logout users views logout name logout 这是视图 from django
  • 将自定义工具提示添加到 DataGrid 中的行

    我想自定义我的 DataGrid 以在所选行中显示工具提示 请参阅下面的模型图像以更好地了解我想要实现的目标 As it is at the moment Shows a single selected row 我多么愿意 显示选定的同一行
  • 复杂的 nHibernate QueryOver 表达式

    我在层次结构中有以下对象A gt B gt C gt D 每个对象都映射到一个表 我正在尝试使用 QueryOver 编写以下 SQL SELECT B FROM A B C D WHERE A ID B ID AND B ID C ID
  • 由于 ToList() 不起作用而返回视图

    我有这个代码 EmployeeEntities storeDB new EmployeeEntities public ActionResult Index var employee storeDB Employees ToList ToL
  • SQL Server 2005 执行MySQL REPLACE INTO?

    MySQL 有这个非常有用但专有的功能REPLACE INTOSQL 命令 这可以在 SQL Server 2005 中轻松模拟吗 开始一个新的事务 执行Select 然后要么UPDATE or INSERT and COMMIT总是有点痛
  • data.table 在非等价自连接上更新的奇怪行为

    在准备一个answer https stackoverflow com a 45781428 3817004对这个问题dplyr 或 data table 用于计算 R 中的时间序列聚合 https stackoverflow com q
  • Char* p 和 scanf

    我一直在尝试寻找以下代码失败的原因 但找不到 所以请原谅我的无知 让我知道这里发生了什么 include
  • 抛出异常返回服务器错误是否不好,例如。 404页面不存在?

    我正在开发 PHP 框架 目前正在设计错误处理 根据我在 SO 上读到的内容 我应该只在特殊情况下使用异常 因此 当输入错误的密码时抛出异常是错误的 当我想向用户返回服务器错误代码 例如 404 Page Not Found 时 是否应该避
  • 一个 $_GET 输入参数,它是一个数组

    我正在尝试将 3 个参数传递给脚本 其中第三个参数 GET value3 应该是一个数组 GET value1 GET value2 GET value3 an array of items 我这样调用脚本 注意我的语法value3 我不确