我有多个站点地图,我想将它们全部合并,但在合并它们之前,我需要为所有数组中的所有值附加一个唯一的变量。
// The global variable
define("BASE_URL", "http://domain.com");
$sitemap_full = [ "home" => BASE_URL ];
// One of the arrays
$sitemap_example = [
"foo" => "/bar",
"gnu" => "/lar"
];
由于我有多个这样的数组,我想创建一个附加链接的函数。
function pushToSitemap($initial_sitemap, $sitemap) {
foreach ($initial_sitemap as $title => $url) {
return $sitemap[$title] = BASE_URL . $url;
}
}
并将采取行动:
pushToSitemap($sitemap_example, $sitemap_full);
但这不起作用,因为如果我print_r($sitemap_full);
它会显示Array( "home", "http://domain.com" );
。
真正令我烦恼的是,如果我在回应它们的功能中,它们会被回应。
我做错了什么?
修改
应该显示
Array(
"home" => "http://domain.com"m
"foo" => "http://domain.com/bar",
"gnu" => "http://domain.com/lar
);
答案 0 :(得分:1)
您的问题似乎在 public void solve(int n, String start, String mid, String end) {
if (n == 1) {
System.out.println(a + " : "+ start + " to " + end);
a++;
} else {
solve(n-1, start, end, mid);
System.out.println(a + " : " + start + " to " + end);
a++;
solve(n-1, mid, start, end);
}
}
函数中:
foreach
您返回只是一个项目,而且格式化已关闭。
相反,
function pushToSitemap($initial_sitemap, $sitemap) {
foreach ($initial_sitemap as $title => $url) {
return $sitemap[$title] = BASE_URL . $url;
}
}