Я пытаюсь редактировать элемент массива. У меня есть массив ссылок $ прямо ниже.
array(6) {
[0]=>
string(22) "http://sumiyoshi22.jp/"[1]=>
string(27) "https://www.finecity138.jp/"[2]=>
string(25) "http://www.hirakata-p.jp/"[3]=>
string(24) "http://www.honki-pj.com/"[4]=>
string(55) "http://nishitetsu-sumai.com/centermarkstower/index.html"[5]=>
string(29) "http://senri100.jp/index.html"}
и пытается сделать так:
array(6) {
[0]=>
string(29) "http://sumiyoshi22.jp/outline"[1]=>
string(39) "https://www.finecity138.jp/outline.html"[2]=>
string(32) "http://www.hirakata-p.jp/outline"[3]=>
string(31) "http://www.honki-pj.com/outline"[4]=>
string(57) "http://nishitetsu-sumai.com/centermarkstower/outline.html"[5]=>
string(31) "http://senri100.jp/outline"}
Я добавил «/ контур» и изменил индекс -> контур. Но еще одну вещь, которую мне нужно удалить в этой ссылке http://senri100.jp/index.html Часть «.HTML».
Это функция, которую я использую.
function add($links){
if (strpos($links, "https://www.finecity138.jp") === 0){
return $links."outline.html";
} else if (strpos($links, "outline") === false){
return $links."outline";
}
return $links;
}
foreach ($links as $check){
$replace[] = add($check);
}
Расширение вашего вопроса может стать слишком широким, но я отвечу только на основании предоставленных образцов данных. Кажется, выгодно взглянуть на http://php.net/manual/en/function.parse-url.php
Код: (демонстрация)
$array = [
"http://sumiyoshi22.jp/",
"https://www.finecity138.jp/",
"http://www.hirakata-p.jp/",
"http://www.honki-pj.com/",
"http://nishitetsu-sumai.com/centermarkstower/index.html",
"http://senri100.jp/index.html"];
foreach ($array as $url) {
$parts = parse_url($url);
$scheme = $parts["scheme"];
$host = $parts["host"];
$path = dirname($parts["path"]) ?? '';
if (in_array($host, ["www.finecity138.jp", "nishitetsu-sumai.com"])) {
$path .= ($path == "/" ? "" : "/") . "outline.html";
} else {
$path .= "outline";
}
$output[] = "{$scheme}://{$host}{$path}";
}
var_export($output);
Вы возврате после первого if
заявление.
Просто измените порядок пунктов.
function add($links){
if (strpos($links, "https://www.finecity138.jp") === 0){
return $links."outline.html";
}
if (strpos($links, "outline") === false){
return $links."outline";
}
return $links;
}