勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

画像をURLから取得して異なるサーバーにアップロード

      2014/05/17

■やりたかった事
・画像があるサーバーはaaaサーバー
・アップロード先はbbbサーバー
・formのアップロードではなくURLから画像取得

■ソース
<?php
/* 一時的にファイルを保存 */
$img = file_get_contents('http://aaa.com/images/hoge.jpg');
$tmp_dir = '/hoge/tmp/';
$tmp_name = 'tmp_' . round(rand(1,10000)) . '.jpg';
$tmp_img = $tmp_dir . $tmp_name;
$fp = fopen($tmp_dir . $tmp_name, 'wb');
fwrite($fp, $img);
fclose($fp);

/* ファイルをアップロード */
require_once 'HTTP/Request.php';
$url = "http://bbb/receive.php";
$req =& new HTTP_Request($url);
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$res = $req->addFile('image', $tmp_img);
$req->sendRequest();
$req = $req->getResponseBody();

/* 一時画像の削除 */
if (is_file($tmp_img)) {
unlink($tmp_img);
}
?>

 - PHP, 画像

  関連記事

PHPの文字化け対策

PHPファイルもDBも全部UTF-8で出来たらいいけど、 そうもいかない場合が多 ...

PHPで実行時間の測定

$start_time = microtime(true); /***測定したい ...

PHPで「Warning: date(): It is not safe to rely on the system's timezone settings.」のエラー

PHPでdate関数を使った際に、   [crayon-5c6949d ...

JavaScriptで画像に光沢をつける(glossy.js)

凄く簡単に光沢がつけられるライブラリがあったのでメモ。 ライブラリを呼び出してc ...

incファイルとかtplファイルとか

初めて見るサーバーのファイルを見ていると incファイルとかtplファイルとか見 ...

PHPで配列を検索クエリ化、検索クエリを配列化

PHPで配列を検索クエリ化、検索クエリを配列化する方法のメモ。   ■ ...

phpMyAdminより高速で軽量なAdminerが凄い

MySQLをGUIで管理できるphpMyAdmin。特に不満はないんだけど、もっ ...

MySQLでのバッククオート

phpmyadminを使っていると←みたいな括りを見るけど これなんなん? と思 ...

数値を3桁とかでカンマ区切りにする

見たこと無い関数が業務中にあったのでメモ。 number_format ■参考サ ...

自動的に定義される定数

PHPファイルを解析中__LINE__という記述があり、 定数? とその場は思っ ...