2015-08-14 3 views
-1

У меня есть сценарий, который получает все изображения с веб-сайта и помещает эти URL-адреса в текстовое поле вместе. Когда я отправляю эту форму, я получаю ее в переменной POST.получить url, распечатать его и перейти к следующему - PHP

так:

$var = $_POST['textarea']; 

это $ содержание вар, как это:

http://site1.com/image1.jpg 
http://site2.com/image2.jpg 
http://site3.com/image3.jpg 
http://site4.com/image4.jpg 
http://site5.com/image5.jpg 
http://site6.com/image6.jpg 
... 

Мне нужно, чтобы каждый URL отдельно для печати изображения на экране. Я хочу напечатать image1, IMAGE2 ...

<img src=http://site1.com/image1.jpg> <img src=http://site2.com/image2.jpg> 

, как я могу это сделать? спасибо!

+0

вам необходимо [повторить] (http://php.net/manual/en/control-structures.foreach.php) через массив. Попробуйте, и если вы застряли, вернитесь за помощью с кодом. – DevDonkey

+0

Могу ли я зайти до \ n или
? –

+0

'$ var = explode (" \ n ", $ var);' для получения массива (при условии, что строки действительно разделены символом новой строки) – Martin

ответ

0

Это действительно довольно основной:

// Convert a string of '\n' separated URLs into an array of img tags 
$list = array_map(
    function ($url) { return '<img src="' . trim($url) . '">'; }, 
    explode("\n", $var) 
); 

// Output an array of img tags as a single space delimited string 
echo implode(' ', $list); 

Вы должны взглянуть на то, что все следующие функции делают:

  • explode() - Разбивает строку по строке
  • array_map() - Применяет обратный вызов к элементам данных массивов
  • implode() - Объединение элементов массива со строкой
Смежные вопросы