[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как вывести первое вхождение
Страницы: 1, 2
Frost-56
Всем привет, есть функция:

                    foreach ($strae[0] as $val) {
//print_r($val);
if (stristr($val, "openload.co") !== false) {
if (empty($embed) && stristr($val, "/embed/") !== false) {
$embed = $val;


echo '<div class="wahle">Wдhle einen Movie4k Stream / Hoster:</div>[xfgiven_player1]<iframe width="555" height="400" src="' . $embed . '" id="ytplayer" frameborder="0" allowfullscreen></iframe>[/xfgiven_player1]';
}
}
else {
$links[] = $val;
}
}


В $strae[0] входит 10-15 ссылок, хочу поймать и вывести только одну openload.co.
Но если в массиве ссылок их 2 он выведет обе.

Как сделать чтобы первую попавшуюся только вывел?
Frost-56
Цитата (kaww @ 6.09.2018 - 19:41)
http://php.net/manual/ru/control-structures.break.php

В примере небыло 2х повторяющихся слов в массиве.
Frost-56
Если прописываю break; то вообще не выводит ничего
killer8080
Цитата (Frost-56 @ 6.09.2018 - 18:14)
Если прописываю break; то вообще не выводит ничего

смотря куда прописываешь wink.gif
l@pteff
laugh.gif
Frost-56
Цитата (killer8080 @ 6.09.2018 - 20:19)
Цитата (Frost-56 @ 6.09.2018 - 18:14)
Если прописываю break; то вообще не выводит ничего

смотря куда прописываешь ;)

 foreach ($strae[0] as $val) {

if (stristr($val, "openload.co") !== false) {
if (empty($embed) && stristr($val, "/embed/") !== false) {
break;
$embed = $val;


echo '<div class="wahle">Wдhle einen Movie4k Stream / Hoster:</div>[xfgiven_player1]<iframe width="555" height="400" src="' . $embed . '" id="ytplayer" frameborder="0" allowfullscreen></iframe>[/xfgiven_player1]';
}
}
else {
$links[] = $val;
}
}


вот

Куда бы я ее не прописывал, все равно 2 ссылки, у меня как минимум $links[] не получате остальные ссылки.
Эли4ка
Ну а почему именно туда поставили,можете сказать?
Frost-56
Цитата (Эли4ка @ 6.09.2018 - 21:28)
Ну а почему именно туда поставили,можете сказать?

В примере так было, ставил ее везде, даже после эхо, результат один
Эли4ка
Что-то я не понимаю. У вас две одинаковые ссылки и вы хотите вывести из них только одну,а другую нет?
Frost-56
Цитата (Эли4ка @ 6.09.2018 - 21:38)
Что-то я не понимаю. У вас две одинаковые ссылки и вы хотите вывести из них только одну,а другую нет?

Ссылки разные, но домен у них один, мне надо забрать только 1 из них любую, а все остальные которые домены заменисти в массив просто.
l@pteff
Frost-56, покажи плз дамп массива $strae[0] и что такое $embed не совсем понятно
Frost-56
Цитата (l@pteff @ 6.09.2018 - 22:02)
Frost-56, покажи плз дамп массива $strae[0] и что такое $embed не совсем понятно

дамп $strae[0]

array(6) { [0]=> string(26) "https://vivo.sx/601d751dfd" [1]=> string(37) "https://openload.co/embed/rydtH4N6K9E" [2]=> string(40) "http://streamcloud.eu/m2dhhf2vua2l/.html" [3]=> string(45) "https://streamango.com/embed/psetddaokadfaapf" [4]=> string(37) "https://openload.co/embed/5R_cUrQrkoo" [5]=> string(28) "http://vidzi.tv/0jm4zhhkv0fx" }


А $embed просто пустая переменная.

 $links = [];
$embed = '';
l@pteff
Ну у меня одну ссылку и выводит (отметил внутри цикла)

$strae[0] = array(
"https://vivo.sx/601d751dfd",
"https://openload.co/embed/rydtH4N6K9E",
"http://streamcloud.eu/m2dhhf2vua2l/.html",
"https://streamango.com/embed/psetddaokadfaapf",
"https://openload.co/embed/5R_cUrQrkoo",
"http://vidzi.tv/0jm4zhhkv0fx"
);

foreach ($strae[0] as $val) {
if (stristr($val, "openload.co") !== false) {
if (empty($embed) && stristr($val, "/embed/") !== false) {
$embed = $val;

echo '<pre>';
print_r($embed); // https://openload.co/embed/rydtH4N6K9E

//echo '<div class="wahle">Wдhle einen Movie4k Stream / Hoster:</div>[xfgiven_player1]<iframe width="555" height="400" src="' . $embed . '" id="ytplayer" frameborder="0" allowfullscreen></iframe>[/xfgiven_player1]';

}
}
else {
$links[] = $val;
}
}

Frost-56
Цитата (l@pteff @ 6.09.2018 - 22:19)
Ну у меня одну ссылку и выводит (отметил внутри цикла)

$strae[0] = array(
"https://vivo.sx/601d751dfd",
"https://openload.co/embed/rydtH4N6K9E",
"http://streamcloud.eu/m2dhhf2vua2l/.html",
"https://streamango.com/embed/psetddaokadfaapf",
"https://openload.co/embed/5R_cUrQrkoo",
"http://vidzi.tv/0jm4zhhkv0fx"
);

foreach ($strae[0] as $val) {
if (stristr($val, "openload.co") !== false) {
if (empty($embed) && stristr($val, "/embed/") !== false) {
$embed = $val;

echo '<pre>';
print_r($embed); // https://openload.co/embed/rydtH4N6K9E

//echo '<div class="wahle">Wдhle einen Movie4k Stream / Hoster:</div>[xfgiven_player1]<iframe width="555" height="400" src="' . $embed . '" id="ytplayer" frameborder="0" allowfullscreen></iframe>[/xfgiven_player1]';

}
}
else {
$links[] = $val;
}
}


Ну у меня все равно 2, мб потому что все идет в while ? да не, врядли

while ($rowz = mysqli_fetch_assoc($vivodserii)) {
preg_match_all('/https?\:\/\/[^\/]+\/[^\b\,]+/i', $rowz['xfields'], $strae);

$links = [];
$embed = '';
//var_dump($strae[0]);
foreach ($strae[0] as $val) {

if (stristr($val, "openload.co") !== false) {
if (empty($embed) && stristr($val, "/embed/") !== false) {

$embed = $val;
print_r($embed);

//echo '<div class="wahle">Wдhle einen Movie4k Stream / Hoster:</div>[xfgiven_player1]<iframe width="555" height="400" src="' . $embed . '" id="ytplayer" frameborder="0" allowfullscreen></iframe>[/xfgiven_player1]';

}

}
else {
$links[] = $val;
}
}



}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.