PHPを使うと、パラメータを与えてそれに応じて描画する、ということができます。
例えば「http://myhost/imagetest.php?p=abcd&q=jpg」というURLを指定し「abcd」というパラメータを与え、これに応じてJPG画像を作成するケースがあったとします。
この場合、描画した画像を保存する場合、ファイル名がすべて「imagetest.jpg」となってしまいます。パラメータが異なってもファイル名が同じなのです。
もしURLが「http://myhost/imagetest.php/abcd.jpg」ならばファイル名は「abcd.jpg」と保存されるので、次のような処理ができないか、考えます。 (さらに…)
PHPにはmb_convert_kanaという便利な関数があります。
全角と半角を相互に変換するだけでなくカタカナとひらがなを変換してくれます。 (さらに…)
昨日からポケモン立体図鑑で遊んでいますが、今日はPHPを使って「ARマーカーメーカー」を作ってみました。 (さらに…)
スタニッキという、Twitterでの自分の発言をまとめるサイトを作っています。
ここに体重グラフを表示するページがあります。
グラフの作成にはGoogleチャートを使っていました。
GoogleチャートはURLを正しく与えるとグラフを作成して返してくれるサービスですが、体重の記録をすべて残しているため、URLが長くなってきました。
URLに使える文字は2083字までなのですが、私のグラフのURLは既に2000字近くあります。 (さらに…)
PHPで長方形を描くときは、塗りつぶす場合は「imagefilledrectangle」、塗りつぶさない場合は「imagerectangle」を使います。 (さらに…)
自分のウェブサイトにキーワードに関連した画像を貼り付けたいと思います。
Googleのイメージ検索(Google Image Search API)を使い、PHPで取得する方法を使います。
API Keyの取得
APIを使うには自分自身のKeyを取得する必要があります。
ここでは関係ないですが、このKeyは他の検索でも同じものを使うことができます。
URL
検索のためのURLを与えるとJSON形式で検索結果が戻ってきます。
基本的なURLは次の通りです。
vはバージョンです。今のところ1.0だそうです。
keyには自分のAPI Keyをセットします。
qには検索語をセットします。日本語のときはURLエンコードする必要があります。また「hl=ja」を付けるとよいでしょう。
具体的な使い方は後述します。 (さらに…)
PHPでJSONを使う場合について、まとめます。
前提
前提は次の通りとします。
太郎と次郎がいて、それぞれidとnameを持っています。
次郎には子供がいて(春子、夏子)、それぞれnameを持っています。 (さらに…)
PHPで数学の「組合せ」をすべてリストアップするコードを書いてみました。
「組合せ」とは、n 個からm 個を選ぶ場合のすべてのパターンのことで、そのパターンの数は
=n!/(m!(m-n)!)
で表されます。
例えば、「1,2,3,4,5,6」という6個から4個を選ぶ場合には
1234、1235、1236、1245、1246、1256、1345、1346、1356、1456、2345、2346、2356、2456、3456
という15通りのパターンができます。 (さらに…)
先日、PHPを使ってはてなハイクに投稿する方法を書きましたが、Twitterに投稿する方法も書いておきます。
詳しくはPHP+OAuthでTwitter - SDN Project(リンク切れ)に書かれています。ありがとうございました。
準備
「OAuth.php」と「twitteroauth.php」が必要になります。abraham/twitteroauth - GitHubからダウンロードします。
以下に書くコードと同じフォルダに入れておきます。
サンプル
$st="投稿の本文";
twitterPost($st);
ツイートする内容をセットして実行します。
ボットにする場合はこの辺りを改造します。
function twitterPost
($st){
require_once("twitteroauth.php");
$to=make_oauth_object
();
$url="https://twitter.com/statuses/update.xml";
$result = $to->OAuthRequest($url,"POST",array("status"=>$st));
header("Content-Type: application/xml");
echo $result;
}
実際に投稿する部分です。
「$url」などを書き換えると、フォローしたりファボったりする関数に書き換えられます。
function make_oauth_object(){
$consumer_key = "{Consumer keyの値}";
$consumer_secret = "{Consumer secretの値}";
$access_token = "{Access Tokenの値}";
$access_token_secret = "{Access Token Secretの値}";
$to = new TwitterOAuth(
$consumer_key,
$consumer_secret,
$access_token,
$access_token_secret);
return($to);
}
OAuth認証の部分です。
OAuth認証
TwitterはOAuth認証を使います(はてなハイクはベーシック認証)。
この手続きが面倒なところですが、一度やればすぐに分かると思います。
https://twitter.com/oauth_clientsで登録して、「Consumer keyの値」「Consumer secretの値」「Access Tokenの値」「Access Token Secretの値」を入手します。
これを上のコードの該当箇所にセットしてください。
ちょっと書き換えて「twitterPost()」に直にセットしてもよいのですが、使い回しを考えると別の関数にしておいた方がよいと思います。
PHPで、はてなハイクのボットを作ることにしました。
Twitterのボットは作ったことがあります。
しかし、はてなハイクと認証の方式が違います。Twitterの投稿はOAuth認証ですが、はてなハイクはベーシック認証です。 (さらに…)