我在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上传目录?
答案 0 :(得分:1)
$upload_dir
超出了范围。使用global
关键字,您可以将全局范围中的变量导入当前范围。像这样:
<?php
function get_instagram(...) {
global $upload_dir;
...
}