这个问题不言而喻,但还有其他方法吗?
即使这些是最佳做法,你能否分享它们?
答案 0 :(得分:1)
这些是将信息输入页面的最明显方式。可以用$_GET
之外的其他方式解析网址中的输入,但为什么会这样。
此外,您还可以使用其他方法。例如,您可以将信息保存在文件或数据库中,并在下一页中读取它,尽管您可能仍需要cookie或URL中的某些信息来标识要读取的信息(会话ID)。
所以,虽然严格地回答你的问题是“没有”,我想说“是”,这些是你们常用的方法。
如果它严格关注那些全局变量,那么您已获得$_REQUEST
变量,该变量基本上收集来自$_GET
,$_POST
和{{的所有值1}}在一起。 $_COOKIE
提供有关上传文件的信息,这些信息会自动存储在临时位置,但实质上,这些文件也会发布到页面中。因此,这些全局变量可以帮助您轻松完成与脚本通信的最常用方法。
顺便提一下,所有这些都是输入。您无法通过修改这些$_SUPERGLOBALS
来发回信息或发送到下一页。
答案 1 :(得分:1)
这实际上取决于你想要做什么。
您是否正在传递表单或请求数据?然后GET和POST是你最好的 方法
有关用户的临时数据?会话是你最好的方法。
永久性数据或数据应持续超过一次使用 会议?然后它应该存储在数据库中,或者在极少数情况下存储 平面文件。
答案 2 :(得分:1)
所以我觉得从技术上讲这是由post覆盖 - 但会话的替代方案 - 写入cookie并因此完全依赖于cookie - 是使用"令牌"它在隐藏的表单字段中传递。
通常,令牌是一个长随机字符串 - 您检索然后将其用作会话表的键或ID。在隐藏的表单字段中传递,并在SSL https页面上 - 它完全消除了必须设置和检索用户cookie会话,这对于需要尽可能广泛采用的应用程序(某些人关闭,阻止等等)的应用程序来说是一个很大的优势)。
答案 3 :(得分:0)
不,更多Globals:
$ _ REQEUST - 包括$ _GET,$ _POST,$ _COOKIE
$ _ FILES - 上传的文件数据(如姓名,类型等)
答案 4 :(得分:0)
您可以在数据库中存储一个值,然后使用查询检索它。 除此之外我还瘦了你所有这些
答案 5 :(得分:-2)
PHP中的$ _POST,$ _GET,$ _SESSION和$ _COOKIES是将变量从一个页面传递到另一个页面的唯一方法吗?
没有
没有“最佳做法”。每种做法最适合特定任务。有没有?
此外,以上所有内容都只是PHP超全局变量,而不是“方式”,并且只能单独“传递”任何东西
另请注意,您无法在任何地方传递变量。变量可能只属于执行的脚本。虽然你只能传递一些字符串类型的值。