2013-11-02 2 views
0

У меня есть сценарий, который все сделано сейчас, и все было отлажено, и оно работает, за исключением последнего препятствия. Этот скрипт захватывает соответствующую информацию на веб-сайтах банка, берет эти данные и использует их для заполнения шаблона, а затем все они отправляются в Wordpress. НО я получаю сообщение об ошибке, потому что функция file_get_contents не принимает каждый URL-адрес из массива.Использование переменных массива для FILE_GET_CONTENTS

Я var_dumped массив, и все URLS есть в [0], так что это то, что я пробовал.

  • основных данных является источником соскабливают URL-скрипт использует
  • urlscrape_array является коллекция URLS

    $ master_data = file_get_contents ($ urlscrape_array [0]);

Когда я запускаю скрипт, используя URL-адрес, как показано ниже, он прекрасно работает каждый раз;

$master_data = file_get_contents("http://www.somesite/somepage.html"); 

Это ошибка, я получаю, когда я пытаюсь использовать первый пример»

Warning: file_get_contents() expects parameter 1 to be string, array given in /home3/path/public_html/mysite.com/boise_project/scriptmainpage.php on line 13 

Как запрошенную здесь образец var_dump на $ urlscrape_array [0]

array(504) { [0]=> string(56) "http://www.somepage.com/somepage-3178.html" [1]=> string(54) "http://www.somepage.com/somepage-16.html" [2]=> string(56) "http://www.somepage.com/somepage-3202.html" [3]=> string(56) "http://www.somepage.com/somepage-4324.html" [4]=> string(56) "http://www.somepage.com/somepage-4777.html" [5]=> string(56) "http://www.somepage.com/somepage-5140.html" [6]=> string(56) "http://www.somepage.com/somepage-5220.html" [7]=> string(56) "http://www.somepage.com/somepage-9205.html" [8]=> string(56) "http://www.somepage.com/somepage-3251.html" [9]=> string(56) "http://www.somepage.com/somepage-3323.html" [10]=> string(56) "http://www.somepage.com/some-page-3797.html" [11]=> string(56) "http://www.somepage.com/some-page-4145.html" [12]=> string(56) "http://www.somepage.com/some-page-3191.html" [13]=> string(55) "http://www.somepage.com/some-page-329.html" [14]=> string(56) etc.... 


    Error as per the foreach statement provided by Uptown 
    Warning: Invalid argument supplied for foreach() in /home3/bettyt45/public_html/bdbud.com/boise_project/boise-wordpress.php on line 12 

NULL

print_r resulst ниже;

Array ([0] => Array ([0] => http://www.somesite.com/some-page-3178.html [1] => http://www.somesite.com/some-page-16.html [2] => http://www.somesite.com/some-page-3202.html [3] => http://www.somesite.com/some-page-4324.html [4] => http://www.somesite.com/some-page-4777.html [5] => http://www.somesite.com/some-page-5140.html [6] => http://www.somesite.com/some-page-5220.html [7] => http://www.somesite.com/some-page-9205.html [8] => http://www.somesite.com/some-page-3251.html [9] => http://www.somesite.com/some-page-3323.html [10] => http://www.somesite.com/some-page-3797.html [11] => http://www.somesite.com/some-page-4145.html [12] => http://www.somesite.com/some-page-3191.html [13] => http://www.somesite.com/some-page-329.html [14] => http://www.somesite.com/some-page-3341.html [15] => http://www.somesite.com/some-page-3758.html [16] => http://www.somesite.com/some-page-4180.html [17] => http://www.somesite.com/some-page-9014.html [18] => http://www.somesite.com/some-page-5987.html [19] => http://www.somesite.com/some-page-1542.html [20] => http://www.somesite.com/some-page-3004.html [21] => http://www.somesite.com/some-page-9034.html [22] => http://www.somesite.com/some-page-3385.html [23] => http://www.somesite.com/some-page-3435.html [24] => http://www.somesite.com/some-page-6389.html [25] => http://www.somesite.com/some-page-6992.html [26] => http://www.somesite.com/some-page-7051.html 

ЗДЕСЬ Я КОД, КОТОРЫЙ Я ИСПОЛЬЗОВАЛ СОЗДАТЬ МАССУЮ ВЫШЕ;

 $urlscrape_data = file_get_contents('http://www.mysite.com/boise_project/boise-urls.htm'); 
     preg_match_all('~http\:\/\/www.somesite.com\/some\-page\-\d{1,4}?\.html~', $urlscrape_data, $urlscrape_matches); 

$ urlscrape_array = $ urlscrape_matches;

+0

Я подозреваю, что происходит что-то еще, что теперь показано на вашем примере. Файл_get_contents() довольно прямолинейный, и ваш пример выглядит правильно. Это какой-то случайный цикл? Можете ли вы показать больше? – uptownhr

+1

Также вы можете сделать var_dump или print_r на $ urlscrape_array [0] var и показать нам результат? – uptownhr

+0

Нет цикла for_each или цикла while - я думал, что каждый раз, когда скрипт загружается cronjob, он обрабатывает другой файл и завершает работу. Все запланировано с заданием cron. Или я должен иметь инструкцию for_each или while для вытягивания URL-адресов из массива? Спасибо за вашу внимательную помощь uptownhr. –

ответ

0
foreach($urlscrape as $url){ 
echo $url; //confirm url is changing 
$master_data = file_get_contents($url); 
echo $master_data; 
} 
+0

Спасибо - получил ошибку, которую я добавил выше.Я попробовал [0] [0] также и ту же ошибку. –

+0

Хорошо, я, вероятно, ошибся. Попробуйте обновить цикл. Должен отображать URL-адрес, полученный с помощью file_get_contents. – uptownhr

+0

Hmmm идентичная ошибка как первый foreach @uptownhr –

Смежные вопросы