将现有PHP文件和函数包含在Slim结果中,传回空变量

我开始将Slim用于REST / Json Web服务。 现在,经过初步测试,我意识到我需要包含我用于“普通”Web应用程序的PHP代码,以便计算要返回的正确值。 [也就是说,我不是返回国家统计数据,而是计算人均数据或索引值或聚合。</ em>] </ p>

现在,我在包含文件中的PHP代码( 见下文,B)从另一个文件(C)调用一个函数。 这很好用。 但是该函数中生成的值不会返回到第一个文件(B)。</ p>


  • A:代码修长级别.... include(xx.php) ,yy.php)</ li>
  • B:xx.php:call_to_function_from_yy()</ li>
  • C:yy.php:生成结果; 全局$结果($结果确实有值)</ li>
  • B:$结果为空</ li>
    </ ul>

    任何提示为什么会这样 我可以做什么? 非常感谢!</ p>
    </ div>

展开原文

原文

I am beginning to use Slim for REST/Json web services. Now, after initial tests, I realize that I would need to include PHP code which I use for my "normal" web application, in order to calculate the right values to be returned. [That is, instead of returning national statistics, I calculate per capita data or indexed values or aggregations.]

Now, my PHP code in the included file (see below, B) calls a function from another file (C). This works fine. But the value generated in that function is not being brought back to the first file (B).

  • A: Code Slim level.... include (xx.php, yy.php)
  • B: xx.php: call_to_function_from_yy()
  • C: yy.php: generate result; global $results (with $results having indeed values)
  • B: $results is empty

Any hints why that would be and what I can do? Thanks a lot!

1个回答



假设你的yy.php有这样的东西:</ p>

  function returnResults($ 参数){
/ *
*你漂亮的代码在这里
  • /
    返回$ results;
    }
    </ code> </ pre>

    你的xx.php文件 做这样的事情:</ p>

      require_once $ path_to_your_file。  '/yy.php'; 
    / *
    *你漂亮的代码在这里
  • /

    $ myResults = returnResults($ myParameter);

    / *
    *你漂亮的代码在这里

    • / </ code> </ pre>

    通过这种方式,您可以从xx.php中的yy.php获得结果,如果你能找到一个小的yy'片段,我可以改进这个答案 .php和xx.php。</ p>
    </ div>

展开原文

原文

Assuming your yy.php has something like this:

function returnResults($parameter) {
 /*
  * your pretty code here
  */
 return $results;
}

And your xx.php file does something like this:

require_once $path_to_your_file . '/yy.php';
 /*
  * your pretty code here
  */

$myResults = returnResults($myParameter);

 /*
  * your pretty code here
  */

In this way you get the result from yy.php in xx.php, I can improve this answer if you could who a lil' snippet of yy.php and xx.php.

douzhushen_9776
douzhushen_9776 回到这一点,是的,确实就是这样。 在xx.php中我有db_query(“SELECT * FROM countries”)和yy.php我有函数db_query($ query){global $ result; $ result = pg_query($ query); }。 我没有返回$结果,因为它无论如何都是全球性的。 但是,我现在需要使用$ result = db_query('...')来调用函数(与之前的非Slim版本相反)并返回$ result。 然后它似乎工作。
接近 7 年之前 回复
doujie7886
doujie7886 感谢那。 但并非所有包含的文件都具有功能。 有些只是“正常”代码,为了使主文件变薄,它已经“外包”了。 我想这就是问题所在......
接近 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问