PHPでURLを読み替える方法

PHPを使うと、パラメータを与えてそれに応じて描画する、ということができます。
例えば「http://myhost/imagetest.php?p=abcd&q=jpg」というURLを指定し「abcd」というパラメータを与え、これに応じてJPG画像を作成するケースがあったとします。
この場合、描画した画像を保存する場合、ファイル名がすべて「imagetest.jpg」となってしまいます。パラメータが異なってもファイル名が同じなのです。
もしURLが「http://myhost/imagetest.php/abcd.jpg」ならばファイル名は「abcd.jpg」と保存されるので、次のような処理ができないか、考えます。 (さらに…)

mb_convert_kanaのオプション

PHPにはmb_convert_kanaという便利な関数があります。
全角と半角を相互に変換するだけでなくカタカナとひらがなを変換してくれます。 (さらに…)

ポケモン立体図鑑ARマーカーメーカー

昨日からポケモン立体図鑑で遊んでいますが、今日はPHPを使って「ARマーカーメーカー」を作ってみました。 (さらに…)

スタニッキの体重グラフを自作した

スタニッキという、Twitterでの自分の発言をまとめるサイトを作っています。
ここに体重グラフを表示するページがあります。
グラフの作成にはGoogleチャートを使っていました。
GoogleチャートはURLを正しく与えるとグラフを作成して返してくれるサービスですが、体重の記録をすべて残しているため、URLが長くなってきました。
URLに使える文字は2083字までなのですが、私のグラフのURLは既に2000字近くあります。 (さらに…)

PHPで描画するときの座標

PHPで長方形を描くときは、塗りつぶす場合は「imagefilledrectangle」、塗りつぶさない場合は「imagerectangle」を使います。 (さらに…)

PHPでGoogle Image Search APIを使う

自分のウェブサイトにキーワードに関連した画像を貼り付けたいと思います。
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を使う

PHPでJSONを使う場合について、まとめます。

前提

前提は次の通りとします。
太郎と次郎がいて、それぞれidとnameを持っています。
次郎には子供がいて(春子、夏子)、それぞれnameを持っています。 (さらに…)

PHPで組合せをすべて表示

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を使ってはてなハイクに投稿する方法を書きましたが、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で「はてなハイク」へ投稿

PHPで、はてなハイクのボットを作ることにしました。
Twitterのボットは作ったことがあります。
しかし、はてなハイクと認証の方式が違います。Twitterの投稿はOAuth認証ですが、はてなハイクはベーシック認証です。 (さらに…)

新しい記事 | 古い記事

タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報