Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 地址和参数框架_Php - Fatal编程技术网

Php 地址和参数框架

Php 地址和参数框架,php,Php,如何看待框架中的地址和参数 你会写: site.com/controller/method?arg=1&arg=2 好吗 做好记录: site.com/controller/method/arg/1/arg2/2 例如,我会问,正如中间框架一样,通常框架有如下url模式 somesite.com/controllerName/actionName/arg1/arg2/.../argN somesite.com/controllerName/actionName/arg1/arg2/.

如何看待框架中的地址和参数

你会写:

site.com/controller/method?arg=1&arg=2
好吗

做好记录:

site.com/controller/method/arg/1/arg2/2

例如,我会问,正如中间框架一样,通常框架有如下url模式

somesite.com/controllerName/actionName/arg1/arg2/.../argN somesite.com/controllerName/actionName/arg1/arg2/../argN
这是一种更好的方法

我最熟悉的框架(CodeIgniter)主要使用这种方法,称之为“url分段”

URL通过$_服务器数组检索,然后分解(“/”),主类(作为入口点)将不同的块分配给competend处理程序(第一个段分配给控制器,第二个段分配给方法,其余段分配给所述方法作为参数数组;您可以使用函数_get_args()(例如,在此处检索它们)

另一个更容易实现的常见选项是使用查询字符串

site.com/?c=controller&m=method&arg1=arg1&arg2=arg2&arg3=2

您可以使用$\u GET数组轻松检索它,并在.htaccess中重写它,使其看起来“更漂亮”。这就是为什么有这么漂亮的URL:)

实际上,这不应该对您起作用。无论框架如何做到这一点,它都应该为您提供对控制器和参数的访问

第一个例子

site.com/controller/method?arg=1&arg=2
这样做的好处是,您可以更好地区分命令
controller/method
和它的参数
arg=1&arg=2
,因此这看起来更接近HTTP

有些人会告诉你,这些URL对SEO不友好,但我们看到越来越多的搜索引擎利用了这里的语义,所以完整的故事是,这两个变体都是对SEO友好的,只有当你混合使用这两个概念,你才能最大限度地控制SEO


在任何情况下,框架都应该允许多种方式,以便您能够利用您认为对您的需求最有用的内容。这通常称为路由。

好的,但我无法在$\u get中获取参数。你是在问一个特定的框架如何处理其URL,还是在实现一个新的框架并询问哪种方式更好?
site.com/controller/method?arg=1&arg=2