php

fuelphpで複数DBに対応する方法 - 大規模サービスも想定して

やりたいこと ある程度の規模のサービスや構成上db自体を分けた方が効率よく開発、運用できることがあるかと思います。 その際にfuelphpではどのように開発するか考えてみる想定している構成 ・マスタdbA ・スレーブdbA ・マスタdbB ・スレーブdbB db設定 今…

fuelphpでセッションidをurlパラメータで引き回す方法

やりたいこと タイトルのとおりですが、http://example.com/?session_id=*** のようにurlでセッションidを引き回してセッションを使用したかった。 ガラケー(フューチャーフォン)時代はcookieが使えない端末が多かったのでこのようなやり方はよくやってまし…

fuelphpでエラー処理を実装する方法

はじめに 意外とおろそかになってしまうこともあるのですが、サービスの規模によってはちゃんとしておかないと後々問題になるのでできる範囲で僕がやっていることをまとめておきます。とりあえず最低限やっておきたいこと ・sqlのエラーなど致命的なエラーが…

Yahoo形態素解析APIを使って文章を解析する方法

はじめに やりたかったのは、こちらで書いたようにtwitter apiなどから取得したテキストからどんなキーワードが多く使われているかを取得したかったmecabというフリーのツールでも実現できるのだが、yahooの形態素解析APIを使用すれうばアプリのキーを登録す…

webサーバ設定作業メモ - 私用

はじめに webサーバを設定する作業があったのですが、いつも同じこと調べながらに作業になるので作業メモとして残しておきます。やりたいことは ・一般ユーザの作成 ・webサーバの設定(バーチャルホストの設定) ・phpのインストールと設定 ・mysqlのインスト…

動画のメタ情報(width、height、video bitrate、audio bitrate)を取得する方法

php

動画ファイルからファイルのwidth、height、video bitrate、audio bitrateを取得する必要があったのでそのときのメモです。 ちなみにphpの実装例で、よく使いそうな値を取得しています。 またffmpegを使用しています。

ソーシャルゲームを開発したときに学んだこと

はじめに けっこう前の話になるのだが、初めてソーシャルゲーム案件の開発をしたときの話です ちょうどmixiアプリがリリースされたときの話でそれまではサービスがオープンしてから時間をかけて大きくなってゆきシステム的にボトルネックとなっている箇所を…

phpexcelのメモリーオーバーを回避する方法

php

$cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp; $cacheSettings = array('dir' => '/tmp'); PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);どうやら上記のコードを呼び出してからエクセルの入力やら加…

phpで画像のリサイズ+トリミング(切り取り)を行ったのでメモ

はじめに サイト内で画像の一覧ページがあったのだが、画像によってページのデザインが崩れてしまうことがあった。 原因としては画像の幅と高さの比率が同じでないとずれてしまうことがあることが判明。 webデザイナーさんに相談するとcssで対応するのが難し…

さくらのレンタルサーバでのfuelphpセットアップ手順

はじめに さくらのレンタルサーバーでの話です。 新規の案件に入る前に必ずやる作業ですが近頃では面倒くさくなって直近の案件のフォルダごとコピーしていらない部分を削除していくっていうやり方やってました。けどそれ続けていくと ・fuelphpのバージョン…

php+socket.ioを使ったチャットの作り方

kimagureneet.hatenablog.com こっちにまじめにまとめました やりたいこと 既存の会員制のwebサービスにチャットシステムを導入したい(ログイン中のみ使用可) チャットは会員同士の1対1のツーショットのみ 会話の内容はログに保存していつでもみれるようにし…

ajaxでphpセッションが使えなかったときの対応

まずやりたかったこと ログインフォームとボタンだけ設置してログインボタン押下でajax通信で外部のサーバへ認証処理を行う。 サーバ側での認証がokだったらphpのセッション変数に保存。 ログイン成功後はhtmlからajax通信でphpで作成したapiにアクセスして…

fuelphpでPC、スマホ、ガラケーサイトを構築する方法

必要な処理 ・ユーザエージェントから端末を判別する ・PC、スマートフォン(以下SP)、フューチャーフォン(以下FP)で使用するテンプレートファイルをきりかえる ・PC、SP、FPで必要であれば文字コードをきりかえる まずは全体的な構成 僕の場合は、fuel/app/c…

複数のwebサーバでセッションを使用

php

過去の失敗 過去にセッションについてはよく調べずに使用したことがあって、以下のような環境でミスしたことがあります ・webサーバ2台 ・セッションの保存先はファイル開発環境ではwebサーバは1台だったので気づかなかったのですがこれだと 当然webサーバ…

phpでファイルの拡張子を取得する方法

php

方法っていうほどじゃないけど、最近なぜかコレをやる必要が多かったので次もあることを期待してメモ $file_path = ''; $pathinfo = pathinfo($file_path); $extension = isset($pathinfo['extension']) ? $pathinfo['extension'] : '';

fuelphpでhtmlメール送信する方法

config.phpを編集 fuel/app/config/config.phpに、always_load['packages']という配列があるのでここにemailを追加。コメントアウトになっているので以下みたいな形になってれいればok 'always_load' => array( 'packages' => array( 'email', ), ); 使って…

fulephpとjquery.autopager.jsで「もっと見る」を実装したのでメモ

まずはjquery.autopager.jsをダウンロード こちらにありました PHP部分の実装 mvc的にはこういうのはviewに書くのがいいのかもしれませんが、僕は迷わずcontrollerに書いてます。 //全データ数を取得 $all_num = 何らかの処理//select count(*) from *** whe…

fulephpでエクセルファイルを読み込むサンプル

やる必要があったのでメモhttps://github.com/muhittin/fuelphp_excel まずこちらからライブラリをダウンロードfuel/packages/ にexcelというディレクトリをつくってアップロード。僕の場合のディレクトリ構成は以下fuel/packages/excel/PHPExcel.php fuel/p…

fuelphpでエクセルファイルを作るサンプル

http://kimagureneet.hatenablog.com/entry/2014/10/18/175755 こちらで読み込むサンプルを作ったのでついでに書き込むサンプルもライブラリの準備などは上記のページと同じです $data = array( 0 => array('id'=>'1','名前'=>'山田太郎','点数' => '90'), 1…

mysqlとphpのserialize関数とでハマったときの記録

やりたかったこと 構造) mst_item 商品マスタ ・id 商品id(PK) ・data 商品データ(phpのserialize関数で変換された文字列)データ例) id,data 1,a:2:{s:4:"name";s:7:"商品1";s:11:"description";s:16:"商品1の説明";} 2,a:2:{s:4:"name";s:7:"商品2";s…

fulephpでfacebookの日本語表記のユーザ名を取得する方法

グーグルで「fulephp facebook ログイン」とかで検索すれば情報がいっぱい出てきます その通りにやれば基本的につまづくことなく実装できましたが、日本語の氏名とるのにつまづいたのでメモ 正しいやりかたかどうかはわからないけど、、、fuel/packages/opau…

fuelphpでのfacebookログイン実装の際にemailも取得する設定

グーグルで「fulephp facebook ログイン」とかで検索すれば情報がいっぱい出てきます その通りにやれば基本的につまづくことなく実装できました 1つ今回やりたかったことつまづいたこととしてemailの取得 /app/config/opauth.phpに以下を追記すると取得でき…

phpをコマンドラインで直接実行

php

たまに忘れるのでメモphp -r "echo 'hello!!';"

cakephpでConfigure::readの値をviewで直接読み出す

知らなかったけどやりたっかことで便利だったのでメモ ■view側 みたいな形でbootstrap.phpに定義した ■bootstarp.php Configure::write('TYPE',array(1 => "タイプ1",2 => "タイプ2)); とかにアクセスできることを発見しました

php5.1→5.4にしたときのメモ

php

以外と対応少なくて助かった いろいろあるみたいだけど、今回対応したのは以下 ・関数への引数で参照渡ししてる箇所の修正 ・クラスのstaticメソッドには明示的にstatic指定 ・pearでバージョンあげられるものは最新に とりあえずこれだけで動くようになりま…

cakephpでコントローラでのパラメータの受け取り方メモ

■POSTでのパラメータ「id」 $this->request->data['id']; ■GETでのパラメータ「id」 $this->request->query['id']; ■URLにパラメータが含まれてる場合 $this->request->pass[0]; // 1 ※http://example.com/controller/action/1の場合

twitter search apiを使って画像アリのツイートを拾ってみた

今回やりたかったことは 特定のハッシュタグがついたツイートの画像を収集したいということ https://dev.twitter.com/docs/api/1.1/get/search/tweets https://dev.twitter.com/docs/platform-objects/tweets これを見たら解決でした(APIのリクエストとレス…

スマホからフォームで画像をアップロードしてphpで保存したら逆さで保存された

php

スマホから単純にフォームの<input type="file">で画像アップロードするphpのシステムを作ったら一部の端末で、アップロードした画像が逆さになるとの報告をうけたのでそのときのメモ http://blog.diginnovation.com/archives/1104/ ↑ググってみたら即解決 こちらの記事をみれば…