とあるサイトの画像を取得しようとするとfile_put_contents() expects parameter 1 to be a valid path, string given inと表示されてしまいます。
色んな方法試してみたのですが上手くいきませんでした。
出来た事は画像のURLを取得、ファイル名を変更して、画像カラムにtextデータに格納です。※画像をimageフォルダにはできませんでした。var_dumpするとバイナリデータは出てくるので取得はできていると思われます。
やりたい事は同じクラス名の画像が2つあり、後者を取得。
頭についているhttpsを削除(これはできます。)→ファイル名をつけてtextカラムに格納(これも出来ます)、画像本体はimage/フォルダに格納です。(これが出来ないです。)
PHP
1 $html = file_get_contents('https://sample.com'); 2 3....略 4 5//画像URLを読み込んでいます。 6$HTMLData = file_get_contents($url); 7 $phpQueryObj = phpQuery::newDocument($HTMLData); 8 9.... 10 11foreach ($phpQueryObj->find('img.sample') as $img) { 12 $src = $img->getAttribute('src'); 13 $file = file_get_contents($src); 14 file_put_contents('image/'.$file, +1); 15 $src2 = str_replace('https://', '', $src); 16 17} 18.... 19 20 $query = "INSERT INTO sample (img)"; 21$query .= " VALUES "; 22 $query .= "("; 23 $query .= "'".$sampleimg."'"; 24 $query .= ")"; 25 $pdo->query($query); 26...
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/05/30 09:45
退会済みユーザー
2017/05/30 09:48
退会済みユーザー
2017/05/30 09:55
退会済みユーザー
2017/06/01 16:55