2011-01-01から1年間の記事一覧

doctrineのギモン

1、HogeTable::getInstance()->method()と 2、Doctrine::getTable('Hoge')->method() の違いがわからない。調べた。 getInstance()は Doctrine_Core::getTable('Hoge') を返す。class DoctrineはDoctrine_Coreを継承してるから Doctrine::getTable('Hoge')…

no pg_hba.conf entry for host "IP", user "hoge", database "db_name", SSL off

PostgreSQLで no pg_hba.conf entry for host "IP", user "hoge", database "db_name", SSL offってエラーになっちゃう。●原因 サーバとの接触に成功はしたもけどサーバが通信を拒否ししてる。 pg_hba.conf 設定ファイルに認証用の項目がないと発生する。●対…

Doctrine で Allowed memory size.. の対処法

ループさせながら $hoge = new Hoge(); … $hoge->save();とかやってるとPHP Fatal error : Allowed memory sizeで落ちちゃう。●原因 doctrineでたくさんメモリ使ってる。 memory_get_usage()で見てるとどんどんメモリ増えてる。●対処法 $hoge = new Hoge(); …

カラム名取得

HogeTable::getInstance()->getColumnNames()

DB見やすく表示

\x

sfValidatorAndを使うと、requiredのエラー文言が変えられない?

sfFormでsfValidatorAndを使うと、requiredのエラー文言が変えられない?解決方法? $this->setValidators(array( 'email' => new sfValidatorAnd( array( new sfValidatorEmail( array(), array('invalid' => '正しいメールアドレスを入れて') ), new mySom…

テーブル単位でコネクションを分ける

テーブル単位でコネクションを分ける方法config/doctrine/schema.yml TestTable: connection: hoge_con columns: id:{ type: INTEGER, primary: true }config/databases.yml hoge_con: class: sfDoctrineDatabase param: encoding: utf8 dsn: "pgsql:host=te…

sessionの中身

/var/lib/php/session

ログ

$this->logMessage('{action} ' . __METHOD__ . ' recommentd_plans = ' . print_r($recommendPlans, true), 'debug');

relationのないテーブルをjoinする

relationをはってると symfony doctrine:build --allしたときに外部キーふられちゃう。そんなときは $this->hasMany('hoge2', array('local' => 'mst_id', 'foreign' => 'id')); $this->createQuery('r')->select('r.*') ->leftJoin('hoge.hoge2 as h') ->or…

PHP でシリアライズしたデータが壊れてしまう場合は base64_encode をする

php

Notice: unserialize() [function.unserialize]: Error at offset 0 of 2 bytes in /var/usr/to/path こんなんがでちゃうとき1、文字コードが違う。 エンコードするときとデコードするときで 文字コード違うとなるらしい function _unserialize($string) { …

myPHPView で適応されるテンプレートファイル名を取得する

view classの中で $this->moduleName $this->actionNameだとモジュール名とアクション名しかとれず アクション内でsetTemplateしてる場合に対応できない。 でも sfConfig::get('symfony.view.'.$this->moduleName.'_'.$this->actionName.'_template', $this-…

getTemplateDirs テンプレートだしわけ関連

getTemplateDirs(配列)に登録しておくと、 その優先順位でテンプレートの存在有無を確認する。つまり先頭から見ていって テンプレートなかったら次のなかったら次のってなる。 だから [0]=>SPのテンプレートパス、[1]=>PCのテンプレートパス って入れてお…

svn externals

svn

$ export EDITOR=vim $ svn pe svn:externals pluginsってやったらvimでファイルが開くから そんなかに sfHogePlugin http://<リポジトリURL>/branches/1.0.0ってかいて svn upするとリポジトリから落ちてくる。消すときは svn propdel svn:externals [path]

svn external つかってるやつ一覧表示

svn

plugins以下でexternalつかってるやつしりたかったら svn pg svn:externals plugins

擬似要素つかって空のdivとかみたいなやつ

.box:after { content: ""; clear: both; height: 0; display: block; visibility: hidden; }

現在のURL取得

$url = sfContext::getInstance()->getRequest()->getUri();※templatesで使用する場合 $url = $sf_context->getRequest()->getUri();他にもいろいろ便利なのある。 参照 /usr/share/pear/symfony/request/sfWebRequest.class.php

svn externals

svn

外部リポジトリを読み込む方法svn propset svn:externals "{作成されるディレクトリ名} {取り込むリポジトリ}" {プロパティをセットする場所}例 svn propset svn:externals 'common http://〜' web/user/css

form の注意書き

設定する $this->widgetSchema->setHelp('hoge', '注意内容');出力する renderHelp()

select タグでgroup

choicesに2次元配列渡すと select optionでgroup化してくれる

php5.1でjson_encode()を使う

php

json_encode()はphp5.2から標準で使える関数。 5.1で使うにはpeclっていうのを使えばいい。sudo pecl install json でインストールして /etc/php.d/json.ini ってファイルを作って、extension=json.so っていて保存して、 httpdをリスタート。

コンポーネント内でaddMetaやaddStyleSheetがきかない

symfony1.4ではコンポーネント内でaddMetaやaddStyleSheetしても layout内のinclude_metas()やinclude_stylesheetsよりあとに addされちゃう。 だから結局はかれるソースにはaddされていないものがはかれちゃう。

プラグインで定義されたモジュールを有効にする

settings.ymlに enabled_modules: [default, hoge] を書く。

アクション内でヘルパー呼び出し

1.1まではsfLoader#loadHelpersメソッドを使用してアクションやタスク内からヘルパーをアクティベートし、呼び出すことがでだけど 1.2からsfLoader#loadHelpersメソッドは非推奨になったみたい。sfContext::getInstance()->getConfiguration()->loadHelpers(…

psqlからcsvはきだし

\pset format unaligned -- 出力形式を指定 \pset fieldsep ',' -- フィールドのセパレータにカンマ区切りを指定 \o psql_out.csv -- 出力ファイルを指定 ここに SQL を書く文字化けしたら $ nkf -s --overwrite psql_out.csv