PHP语法:同一文件中的相同片段返回不同的值

时间:2013-12-29 15:02:40

标签: php wordpress syntax echo

我在PHP格式化方面遇到了困难。 :P 在函数中,我有这些字符串并且$cache1路径输出正确(wordpress绝对上传路径+ /json/dailymile/BLABLA.json

$url1 = "http://api.dailymile.com/people/XXXXX/entries.json";
$cache1 = $upload_dir['basedir'].'/json/dailymile/'.sha1($url1).'.json';

然后我有一个SIMILAR(如果不是相同)的情况,但只有上帝知道为什么,$ cache2之前只返回/json/instagram/BLABLA.json没有wordpress上传路径。

$url2 = 'https://api.instagram.com/v1/users/'.$user_id.'/media/recent/?access_token='.$token.'&count='.$count;
$cache2 = $upload_dir['basedir'].'/json/instagram/'.sha1($url2).'.json';

这两个代码段位于同一个文件中,我在此文件的顶部<?php $upload_dir = wp_upload_dir(); ?>

为什么第二个代码段在/json/instagram/BLABLA.json之前没有返回WP上传目录?

1 个答案:

答案 0 :(得分:1)

在函数中使用代码时,

$upload_dir超出了范围。使用global关键字,您可以将全局范围中的变量导入当前范围。像这样:

<?php
function get_instagram(...) {
    global $upload_dir;
    ...
}