小编B-r*_*rad的帖子

如何使用php restful api-centric设计内部而不是http请求

我想创建一个php restful api-centric web应用程序/网站,其中我有从我的前端代码调用的data/api.除了每次加载页面时都进行HTTP/curl请求调用,我还可以使用像slim这样的框架来进行内部API调用?

我不确定是否可以在我的前端代码中包含api以供内部使用,并且仍然可以将它分开.

我的想法是这样的:

"example.com/api/story/todays-weather/"
pulls in the json formatted story with a http request with curl or Ajax
Run Code Online (Sandbox Code Playgroud)

但我可以这样做:

require("/api/internal.php");
$uri = "/story/todays-weather/";
$call = api::getStory($uri);
$result = json_decode($call);
.....
Run Code Online (Sandbox Code Playgroud)

我是朝着正确的方向前进还是离开了?

api和前端代码在同一个云盒(​​亚马逊E2/LAMP)上,我正在计划使用memcached为api.

php api rest json curl

5
推荐指数
1
解决办法
1602
查看次数

twig:将变量从视图传递给控制器

建立:

  • Twig 1.13.1
  • PHP 5.4.3

问题:

我的数据库中有10,000篇文章.我需要一种方法只允许在页面上显示X个故事.我知道我可以在调用模板之前限制控制器中的数字,但根据使用的模板,该数字会有所不同.我将有一个控制器来处理所有文章.我需要一种方法将数字从模板传递到控制器以限制数组.我不想删除所有10,000篇文章然后使用twig"slice"filter/func.

我知道在django你可以使用下面的.这只会加载前3个故事.

{% get_latest_stories 3 sports as story_list %}
{% for story in story_list %}
    {{ story.title }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这是我目前的文件.

调节器

<?php
$stories = news_stories::getStories("sports",5); //getStories(section,limit);
?>

<?=$twig->render("storyList.html", array('stories' => $stories))?>
Run Code Online (Sandbox Code Playgroud)

查看/模板

{% for story in story_list %}
    {{ story.title }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

摘要

我想要一种方法将一个数字从模板传递给控制器​​,这样我就可以限制从DB返回的行数

php templates twig

2
推荐指数
1
解决办法
7089
查看次数

标签 统计

php ×2

api ×1

curl ×1

json ×1

rest ×1

templates ×1

twig ×1