・データベース的な観点でのソーシャルゲームの特徴 ・データモデル ・ソーシャルゲームに従来型RDBMSを使うべきか、�流行りのNoSQLで行くべきか ・負荷対策 (アーキテクチャ面) ・負荷対策 (ツール面) ・インフラエンジニアのキャリアについて
![ソーシャルゲームのためのデータベース設計](https://cdn-ak-scissors.b.st-hatena.com/image/square/fb432774988d8b58f75aae602255d22f75c49d58/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fdatabasedesignforsocialgames-110115195940-phpapp02-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
Exploring php.net - m-takagiの日記 php.netにある便利なサイトがm-takagiさんによって紹介されています。 phpドキュメントの最新の置き場や、クロスリファレンス、phpの歴史やメーリングリストのログ、講演資料等、有用なリソースが豊富です。 長年phpを使っている方も知らないサイトが多いのではないでしょうか。 この記事自体はPHP Advent Calendar の一環として公開されているものです。 有益な記事が多いのでPHPerな方々は参考にさせていただきましょう。 関連エントリ PHPプログラムを解析して何処が重いか?がブラウザ上で簡単に分かる「XHProf」 PHPのAPCコードを予め前もって作成したり削除するPHP関数「apc_compile_file/apc_delete_file」 使える21のPHPコードスニペット サーバ上で動いてるどの
本属性をAタグもしくはFORMタグの中に追加すると、アクセスした携帯電話の製造番号をサーバに送信します。 ただし、utn指定時のアクセスについては、その都度利用者に対し確認画面を表示します。 送信される製造番号(11桁のユニークな英数字)はユーザエージェントの末尾に追加して送信します。 ユーザエージェントフォーマット DoCoMo/1.0/X503i/c10/ser*********** 製造番号フォーマット ser*********** (ser:固定、***********:製造番号) 本属性をAタグもしくはFORMタグの中に追加すると、アクセスした携帯電話の製造番号とFOMAカード製造番号をサーバに送信します。 ただし、utn指定時のアクセスについては、その都度利用者に対し確認画面を表示します。 送信されるFOMA端末製造番号(15桁のユニークな英数字)およびFOMAカード製
PHPでケータイからセッションを使う場合の設定方法 Tweet 2007/12/12 水曜日 matsui Posted in PHP, サーバ | 23 Comments » 今回は、ケータイ上からPHPのセッションを使う場合の設定方法についてです。 ケータイからPHPのセッションを機能を使う場合、端末によってはクッキーが利用できない場合があるため、そのままでは使うことができません。 セッションを使いたい場合は、インストール時のconfigureオプションに、「–enable-trans-sid」を付ける必要があります。 ※Windowsの場合は特に設定の必要はありません。 また、「php.ini」の設定で、次のように設定してください。 ※設定変更後はWebサーバの再起動が必要です session.use_trans_sid = 1 もしくは「.htaccess」でも設定することができま
携帯電話・個体識別情報(番号)の取得方法、uid、iモードID(guid)、EZ番号、端末シリアル番号 個体識別情報とは 各携帯電話には1台1台、個体識別情報(個体識別番号)というユニーク(唯一)な番号が付いている。 携帯電話の製造番号のようなもの。 主に非公式サイト(勝手サイト)にて会員を識別するために利用されている。 一方公式サイトでは、一般的にユーザID(uid)と呼ばれる端末のIDを取得して会員を識別している。 現在、ドコモ以外は公式サイトで使われているuidを取得することができ、非公式サイトでも利用されている。 個体識別情報を取得できる機種は、ドコモは503以降・FOMA以降、auは全機種、ソフトバンクはパケット通信対応機種以降。 古い機種は個体識別情報を取得できない。 また個体識別情報は、使用する携帯電話にて端末ID(製造番号)を通知する設定にしていないとサイトにてIDを取得で
携帯サイトでは、ブログの投稿にメールを使用しているサイトが多いようです。 受信メールから、件名、本文、添付ファイル(画像)を取得する方法をご紹介します。 受信メールを解析する PEARのMail_mimeDecodeを使用して、受信メールを解析します。 受信メールからのPHPスクリプトの呼び出しは「さくらインターネットで、メール自動返信をする」を参照してください。 #!/usr/local/bin/php -q <?php //PEARのパスを設定 $path = '/home/{さくらアカウント名}/pear/PEAR/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path); require_once 'Mail/mimeDecode.php'; //受信メールから読み込み $params['include_bod
readdir()の戻り値 $file_name を全て見てみるとわかると思いますが、カレントディレクトリを表す "." と 親ディレクトリを表す ".." も返ってきています。unlink() ではディレクトリを削除することはできません。 よって、is_file()関数でファイルかどうか判定して、ファイルならば unlink() すればよいです。 image ディレクトリ内にファイルしか存在しないのであれば、 $path = './image'; $res_dir = opendir( $path ); while( $file_name = readdir( $res_dir ) ){ echo $file_name."\n"; if(is_file($path.'/'.$file_name)) unlink($path.'/'.$file_name); } でOKです。 ./imag
見たところ、属性にtimeというパラメータを渡してあげればいいようです。 【script】 $time = "2001-05-12"; $s->assign("time", $time); 【template】 {html_select_date time=$time} html_select_date関数上、下記が指定された文字がtimeとして認識可能とする スクリプトのようですが別の関数も呼んでたりするので細かくは追っていません。 if (preg_match('!^-\d+$!', $time)) { // negative timestamp, use date() $time = date('Y-m-d', $time); } // If $time is not in format yyyy-mm-dd if (preg_match('/^(\d{0,4}-\d{0,2}-\d
仕事はJava1.4ですが、プライベートはもっぱらPHPないまいです。 こんにちは! このたびCakePHPに触れてみたのでざっくりまとめておきます。 Rails系フレームワークは概要を知っているだけで実際に触れた事がありませんでした。 そこで、ちょうどプライベートでPHPにかぶれている事だし、「PHP on Rails」と聞いていたCakePHPに手を出してみよう、というのがCakePHPに手を出した動機です。 数日に分けてチマチマと書きためていたマトメなので恐ろしく長文になりますが、構わず投下します。 情報収集 CakePHPについては、以下のサイトから学ばせていただきました。 直感的に触れてみたかった頃 初心者のためのCakePHPプログラミング入門*1 フレームワークの大まかな流れを知りたくなった頃 CakePHP アプリケーション実行の流れをシーケンス図で書いてみた*2 特定の事
カッコいい管理画面のHTMLテンプレート総まとめ。 これまで紹介したエントリや、新しく発見したエントリで紹介されているものを全てマージしてみました。 有償のものも混じってますが、カッコいい管理画面を作りたいといった際にカタログ的に使ってみてもいいかも。 独断ですが、クオリティ順に並べ替えてます。 Simpla Admin Boxie Admin Complete Liquid Admin InAdmin Admin (FREE) Adminizio Lite – Admin Template Admin Templates - Professional XHTML Back-end Template Spring Time – Simple Admin Template Internet Dreams Admin Skin Visual Admin ThePixelDeveloper Ad
以前に PHP PDO を使ってみよう でPHP PDOの使い方について書いたのですが 以下のように変数を使いまわすと bindParam を発行した瞬間ではなく 最後に変数にセットされている値でクエリが発行されてしまします。 例) $id = 1; $sql = 'select test_fld1, test_fld2 from test_tbl where id=:id'; $statement->bindParam(':id', $id); $id = 9999; $statement->execute(); この場合 発行される クエリは select test_fld1, test_fld2 from test_tbl where id=9999 となります。 同一の変数を使いまわしながらクエリを組み立てる場合(日付とか)これだと 条件が全て最終の変数になってしまい 希望する結果
WindowsアプリのツリービューっぽいUIをWEB上で簡単実装できるjQueryプラ... 次の記事 ≫:シンプルさがいい感じの154種類のアイコンセット Top 10 MySQL Mistakes Made by PHP Developers PHP開発者のMySQLの間違いトップ10。 手慣れている人にとっては知ってることも多いかもしれませんが、初心者が役立ったり、知らない部分のカバーとしてメモとして書いてみます MyISAMを使っている デフォルトはストレージエンジンにMyISAMだけどInnoDBを使おう リカバリ可能でオンラインバックアップ機能、外部キー利用可能なInnoDBおすすめ 詳細:Open database life: MyISAMとInnoDBのどちらを使うべきか PHPのMySQL関数を使っている mysql_* 関数を使わず、PDO等でストレージ変更に対応しよう
『プログラミングPHP 第2版』を読んで学んだことを、このブログで書いてきました。 PHPで数値形式の文字列を比較する PHPでオブジェクトを配列にキャストすると連想配列になる PHPでは、ブロックを表す方法に波括弧で囲む方法とコロンをつける方法がある。 PHPで可変パラメータの関数を作成する PHPで文字列に該当する名前の関数を実行する PHPで大文字小文字を区別しないで文字列を比較する PHPで文字列を自然順で比較する PHPでフォームの複数選択形式のパラメータを受け取る方法 PHPでキャッシュの有効期限を設定する PHPで”参照渡し”を使う例 PHPで大きな配列などを扱うときはforeachでなくlistとeachを使うとメモリを節約できる RadPHP XEをきっかけにPHPプログラミングを始めましたが、私の知識はPHP4で止まっていました。 そこでPHP5の新機能を学ぶために、図
【レポート】PHPデベロッパがおかしがちな10のMySQL間違い | エンタープライズ | マイコミジャーナル という記事があったのですが、おや?と思う所があったのでツッコミを入れる。 ブラウザ側で動作するJavaScriptを使ったチェックに頼るのではなく、 サーバサイドのPHPでちゃんと検証すること。 PHPでの検証はあてにならない。Perlも然り。PHPには「サニタイズする」関数が沢山あるが、そういうものは安易に使わないようにしたほうがよい。「サニタイズ」ではなく「ヴァリデート」して、意図しない値はエラー、「来るはずがない」値はwarn()(だっけ?)でerror_logにログを吐いて死ぬように。ハカー以外ありえない人に普通の画面遷移見せるのはお人好しもいいところである。当然であるが、エラーログを画面に吐いて死ぬのは論外。 以上をちゃんとした上で、「必ず」プレースホルダを使う。鉄則。
PHP で、クラス内関数をコールバック関数に使うには Filed under: コンピューター 時間:12時38分 投稿者:よしとも AddClips 経由でソーシャルブックマークに登録 覚書です。 PHP はコールバック関数という概念があります。よく使われるのは、array_map のような関数です。この関数は、配列の各要素にコールバック関数を適用します。 第一引数にコールバック関数の名前を文字列として入れてやるわけですが、OOP(オブジェクト指向プログラミング)の場合はこの方法が使えません。クラスインスタンスが $obj だとすると、$obj->func() のようにする必要があります。インスタンスも含めた形で名前を渡す方法がずっとわからないままでしたが、先日 Koders というソースコード検索エンジンでやり方を見つけることができました。 そのやり方ですが、文字列ではなく配列を使いま
平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 本件に関するお問い合わせはこちらよりお願いいたします。
<?php if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') { echo "mysql 上で動作しています。何か mysql 固有のことをここで行います\n"; } ?> PDO::ATTR_ORACLE_NULLS (int) 空文字を SQL の NULL 値に変換します。 PDO::ATTR_PERSISTENT (int) 新規接続を生成するよりもむしろ持続的接続を要求します。 PDO::ATTR_STATEMENT_CLASS (int) Sets the class name of which statements are returned as. PDO::ATTR_FETCH_CATALOG_NAMES (int) 結果セット中の各カラム名にカタログ名を追加します。 カタログ名とカラム名は、小数点 (.) で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く