PHP, PostgreSQL」カテゴリーアーカイブ

CakePHPでスマフォ向け振り分け

CakePHPでスマフォ向けのサイトをPC版と共存させる場合、振り分けは、Layoutを変えるより、Themeを切り替える方が良いようだ。

 

CakePHPのテーマ
http://book.cakephp.org/2.0/ja/views/themes.html

CakePHPでモバイルとPCのレイアウトを分ける手順 asklife |

テーマ毎にCakePHPのデザインを分ける | CakePHP情報

cakephpでスマートフォンかどうか判定する | polidog lab++

php-mysqlは必須

chefでCakePHPをつかったWEBサービスを構築する場合、php-mysqlは必須なので、nginx & php-fpmな環境では、php-fpmのレシピはこのようなものに。

%w{php-fpm php-mysql php-pecl-zendopcache}.each do |pkg|
  package pkg do
    action :install
    notifies :restart, "service[php-fpm]"
  end
end

template "www.conf" do
	path "/etc/php-fpm.d/www.conf"
	source "www.conf.erb"
	user "root"
	group "root"
	mode 0644
end

service "php-fpm" do
  action [:enable, :start]
end

プロジェクト毎にPEARをインストールする

pear config-create /path/to/yourproject/pear ~/pearrc/yourproject.pearrc

プロジェクト毎に、PEARの設定ファイルを作った方が良いので、~/pearrc/yourproject.pearrcと指定する。~/pearrcが無いとエラーが出るので、無い場合は、mkdirをする

PEARの基本ファイルをインストール

pear -c ~/pearrc/yourproject.pearrc install -o PEAR

via! http://blog.verygoodtown.com/2012/01/mac-os-x-lion-php-pear/

CakePHPで名前付き引数

こういうURL

http://www.kalium.net/cakephp/film/index/foo:1/bar:1002

で名前付きの引数を渡す場合は、コントローラーでこの様に受け取ることができる

<?php
$foo = $this->params['named']['foo'];
$bar = $this->params['named']['bar'];
?>

HTMLヘルパーで上の様なURLを出力する場合は、

<?php echo $html->link("List", array('controller' => 'films', 'action' => 'index', "foo" => 1, "bar" => 1002 )); ?>