foreach问题

#1 zylmlnh

假设我在controller中有main.php和main2.php

通过main.php打开的页面

怎么用
<{foreach  from=$ren  item=ren1}>

<{/foreach}>
输出main2.php中的内容呢

2011-01-24 17:40:44

#2 jake

大概可以用smarty的include_php吧。

不过我建议你在控制器内拉取main2.php的数据过来再放到模板中显示。直接在模板内获取别的程序的方法在MVC里面是不建议使用的。

2011-01-24 18:58:36

#3 zylmlnh

你的意思是
用<{include_php file="/controller/main2.php"}>
加载main2.php
然后用foreach输出?

2011-01-24 20:15:41

#4 zylmlnh

我在SpeedPHP中
有两个入口
一个是index.PHP前台入口
一个是admin.php后台入口
控制器也是两个
前台的控制器main.php
后台的控制器admin.php
我现在想在后台里,调用前台控制器里面的动做

不知道该怎么弄~~

2011-01-24 20:43:00

#5 jake

首先还是要说明,多入口是在比较大的应用才需要用到。一般常见的PHP应用,可以通过伪静态实现类似多入口的URL——但实际上那只有一个应用程序(一个入口文件)。

多个入口,就是多个应用程序,在一个应用程序里面调用另一个应用程序的功能,那么就得要使用到接口,比如说新浪微博的API,就是一种接口。简单的接口,可以直接使用PHP的file_get_contents。

假设A应用程序是a.com/my.php,B应用程序是b.com/api.php,那么在b.com/api.php中可以接收某些参数,然后执行一些操作,返回数据(推荐JSON或XML格式)——此端是接口的服务端。
然后在另一个应用程序(入口文件)a.com/my.php中,可以通过file_get_contents('http://b.com/api.php?参数')的方式获取到接口数据,然后通过JSON或XML解析得到需要的数据。

以上就是跨应用调用接口功能的过程,当然实际上是更复杂一些,比如说认证机制,数据缓存等。

2011-01-24 21:26:06