PHP

PHP で、UNIX タイムを得る、変換する。

PHP で、yyyy/mm/dd hh:nn 形式の日付から UNIX タイムを調べたり、逆に UNIX タイムから yyyy/mm/dd hh:nn の日付を調べる簡単なスクリプトを作ったので、参考にしてみて欲しい。以下のスクリプトを date.php とかのファイル名で保存して、http://yourdomain.com/date.php にアクセスする。

基本は、

続きを読む

Linux に、phpMyAdmin 2.10.1 をインストールする方法

簡単にいうと、「scripts/setup.php 実行後、config/config.inc.php を ./ にコピーして、 .htaccess を設定」 すればよい。

※Fedora Core 6 で phpMyAdmin を Fedora Core OS 自体のインストール時、またはパッケージマネージャ(ソフトウェアの追加・削除)からインストールした人は、phpMyAdmin は /usr/share/phpMyAdmin にインストールされ、http://127.0.0.1/phpMyAdmin/ からアクセスできる。ここで、ブラウザから基本認証でユーザー名とパスワードを聞かれてくるから、ユーザー名 root、パスワードなしでアクセスする。

続きを読む

PHP で、HTTP クライアントを作る方法

PHP で、HTTP クライアントを作る方法をまとめてみた。以下の2通りがある。

PHP では fopen でサイトにアクセスできてしまうから、前者の方法が一番シンプルだといえるだろう。ユーザー名とパスワード付きの基本認証が施してあるサイトやさらに凝ったことをしたければ、CURL を使うのがよい。

続きを読む

PHP で、変数の内容をすべてダンプ(表示)する方法(print_r)

print_r($value);

のように使う。

別のエントリーで var_dump($value) というのを紹介したが、PHP には 似たような print_r($value) というのも存在する。機能的には似たようなもんである(var_dump は、public や private も表示するらしい)が、print_r は array のポインタを最後まで進めるため、reset($array) をする必要があると、うちのお母ちゃんが言ってた。

続きを読む

Fedora Core 6 で、パッケージマネージャで追加した phpMyAdmin を使う。

Fedora Core 6 のパッケージマネージャで phpMyAdmin を追加しても、localhost からしかアクセスできないので注意する。以下は必要情報。

  • phpMyAdmin がインストールされるディレクトリ: /usr/share/phpMyAdmin
  • アクセス URL: http://127.0.0.1/phpMyAdmin/
  • パスワード: MySQL のユーザー名とパスワード
  • localhost 以外からアクセスできるようにしたいときは、phpMyAdmin.conf の セクションを以下のように修正する。 order deny,allow # deny from all ←コメントアウト # allow from 127.0.0.1 ←コメントアウト allow from all # ←すべてのマシンからアクセス可能にしてしまえ!
続きを読む

PHP では、array の方が速い?

Drupal の Development メーリングリストに、

<?php $class = $class == 'even' ? 'odd' : 'even' ?>

よりも

<?php $flip = array('even' => 'odd', 'odd' => 'even'); $class = $flip[$class]; ?>

の方が10%高速である、という投稿があった。うむむ。。

Drupal は array (によるハッシュテーブル)を使いまくり。ここまで array を駆使すると PHP を使った特有のスクリプトっぽい。慣れるまで時間がかかるかも。

続きを読む

PHP で、arrray に入っている変数の内容をすべてダンプ(表示)する方法(var_dump)

<?php var_dump($value); ?>

のように使う。

PHP のプログラミングにおいては配列もハッシュも array オブジェクトで扱うため、ハッシュを使いまくるとそのキーと値の対応が何がなんだかわからなくなってくる。特に Drupal はこの言語の機能をフルに使いまくっているのでこのあたりが Drupal のラーニングカーブを緩やかなものにしていると思う。

ゆえに、自分の知りたいことがどこかに書いてあるだろうけど、どこにあるかわからない Drupal においては、デバッグ時に地道に上の var_dump($value); (または、print_r)をコードにはさんでいくしかない。しかし、一度 array() の内容を見れば、Drupal のオブジェクトがどのように格納されているか理解できるだろう。

続きを読む

PHP で、ファイルのアップロードできるファイルサイズの容量を増やす。

php.ini を見つけて、以下の 10M とか数字のあるところを好きなだけ増やせばよい。php.ini は、Fedora Core なら /etc/php.ini にある。


; Maximum size of POST data that PHP will accept.
post_max_size = <font color="blue"><strong>10M</strong></font>

; Whether to allow HTTP file up
file_uploads = <font color="blue"><strong>On</strong></font>

...

; Maximum allowed size for upload
upload_max_filesize = <font color="blue"><strong>10M</strong></font>
続きを読む

PHP で、時間別に色を分ける方法(虹色のようなパレットを作りたい)

まず、赤→橙→黄→緑→青と徐々に変化する虹色のようなパレットを考える。

この色の変化(RGB=Red, Green, Blue の順)は、

赤 (255, 0, 0) 橙 (255, 128, 0) 黄 (255, 255, 0) 緑 (0, 255, 0) シアン (0, 255, 255) 青 (0, 0, 255)

という順になるから、これがわかっていれば後は簡単。それぞれの値の間を時間の値(0~23時)適当に埋めていけばよい。

それがわかれば、1日の時間を感覚的な色(あくまでも筆者の感覚)で以下のように表すことができる。以下のコードは、元の画像に、x と y の配列で用意した座標に時間ごとに色を変えながら点を打っていくもの。

続きを読む
PHP を購読