勉強したことのメモ

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, 画像

  関連記事

ブログサービスの様にサブドメインを動的に生成する方法  

ブログサービスの様に「hoge」というログインIDを作成した際、「hoge.bl ...

PHPでコマンドを実行して画像を加工

PHPで画像をリサイズしたりサムネイルを作ろうとすると、 ソースが長くなって面倒 ...

javascriptやjQueryで画像を書き換えても変わらない場合

けっこう前に画像をアップロードしてリアルタイムに プレビューする機能を作った時に ...

PHPでパーミッションの変更

chmodというみたことが無いPHP関数があったのでメモ。 ■参考サイト htt ...

XHTMLをPHPファイルで取り扱う際の注意点

デザイナーさんからガラケーサイト用に渡されたHTMLファイルが XHTMLで書か ...

短縮URL(リダイレクトページ)

<? /* 管理画面とあわせて使う。 short_url直下にこのphpを ...

PHPの条件式でまとめて評価

PHPのソースで、 if( !($hoge || $fuga || $foo) ...

アタリ(noimage)画像の自動生成

縦200×横150pxのno-image画像みたいなのが欲しかった。 探すと便利 ...

PHPで複数の変数に同じ値を代入する

PHPのソースで $a = $b = $c = 12; みたいな見たことの無い代 ...

CodeIgniterでログをファイルに出力する

Codeigniterで何らかのエラーが発生した際に分かりやすい形でファイルに情 ...