CakePHP およびそれらの周辺技術・ライブラリ・ドキュメントに関するAdvent Calendarです。 CakePHP3限定ではありませんので、CakePHP2関連の内容もどんどんかいちゃってください。 プログラミング関連だけではなく、ドキュメント翻訳関連のお話も大歓迎です。
CakeEmail¶ class CakeEmail(mixed $config = null)¶ CakeEmail は、メール送信の新しいクラスです。このクラスを使うと、アプリケーションの 任意の場所からメールを送信できます。コントローラの中で EmailComponent を使うことに加えて、 シェルやモデルからもメール送信できます。 このクラスは、 EmailComponent を置き換えるもので、より柔軟にメール送信できます。 例えば、既存の SMTP や Mail トランスポートの代わりにメールを送信するための独自のトランスポートを 作成することができます。 基本的な使い方¶ まず最初に、 App::uses() を使って、クラスがロードできるようにします。
一応検証してみたのでメモ リンク先の記事の方法でうまくいく/うまくいかない理由がわからなかったので。 SQL データ構造+サンプルデータ CREATE TABLE IF NOT EXISTS `posts` ( `id` int(11) NOT NULL AUTO_INCREMENT, `body` text NOT NULL, `created` datetime NOT NULL, `modified` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; -- -- テーブルのデータをダンプしています `posts` -- INSERT INTO `posts` (`id`, `body`, `created`, `modified`) VALUES
PDFを一時的にサーバーに保存しておくというお仕事があったので。 TCPDFの詳しい使い方は省略します。 環境 PHP:5.3.3 CakePHP:2.4.6 View 基本的にはVIEWで完結します。 TCPDFには出力時のオプションがあり、 Output()の第二引数に指定する値によって挙動が変わります。 I: ブラウザに出力する(既定) D: ブラウザで(強制的に)ダウンロードする。 F: ローカルファイルとして保存する。 S: PDFドキュメントの内容を文字列として出力する。 サーバーに保存してあげるには 'F' を指定します。 その際に第一引数に保存したいパスを含めたファイル名を指定してください。 今回はapp/tmpディレクトリにpdf_tmpというフォルダを作成し、保存することにします。 この際tmpディレクトリまでのパスはグローバルな定数で取得できます。 //TMPがtmp
Capistrano による CapkePHP アプリケーションのデプロイで発生したエラーへの対策。詳しくはデプロイ時の composer install 実行で、PHP に intl extension が入っていないためにエラーが発生しました。 — 環境 — CakePHP 3.1.1 PHP 5.5.19 Composer 1.0 capistrano 3.4.0 $ bundle exec cap production deploy --trace ... DEBUG [482f8d60] Command: cd /path/to/cakephp/releases/2015***** && ( PATH=/usr/local/bin:$PATH /usr/local/bin/composer install --no-dev --prefer-dist --no-interacti
PHP Advent Calendar 2013 - 7日目 昨日は@hidenorigotoさんのBeyond MVCでした。 今日は PHPあるある的な問題に対する対策について少しばかり書きたいと思います。 ※ 歯ブラシを持たせてみた *1 メモリ不足でよくやる対応 PHPで大量のデータを扱ったりすると、設定された利用可能な最大メモリ使用量を超えて PHP Fatal error: Allowed memory size of 524288330 bytes exhausted (tried to allocate 351 bytes) in ....というエラーが発生して対応に追われたことの経験がある人はかなり多いと思います。 そもそも環境のメモリに余裕があるならmemory_limitを調整してメモリの使用量を増やしたり あまり余裕がない場合は暫定的対応として、該当処理部分だけ <
こんにちはPHP Matsuriでは色々とお世話になってる@kozoです。 この記事は2014年CakePHP Advent Calendarの11日目です CakePHP 3系からモデルは大きく変わり、戻り値が配列からオブジェクトになるとか、Modelが1ファイルだったものがTableとEntityに分かれるなど色々変わって非常に便利になってます! 今回は大きく変わったもう1個のfind(SELECT句)のSQLの組み立て方法について調べてみました。 find QueryBuilderの開始地点になり、SELECT用のQueryオブジェクトが生成されます。 QueryオブジェクトをメソッドチェーンでつなげることでSQLを組み立てます。 // 基本的な使い方 $this->Users->find() ->where(条件A) ->where(条件B) ->order(ソート条件A) ->o
Posted on: 2012/03/30 CakePHP 検索プラグイン「Search Plugin」の検索条件サンプルいろいろ 言わずと知れたCakePHPの検索プラグイン「Search Plugin」 高度な検索機能はもちろんのこと、検索結果にもページネーションを引き継いでくれる便利なプラグインです。 「これは入れとくべし!」なプラインのひとつですね。 CakeDC / search ということで、検索条件サンプルをいくつか載せておきたいと思います。 1. 特定フィールドの部分一致検索 2. 複数フィールドの絞り込み検索 3. アソシエーションテーブルのフィールドの検索 4. クエリー検索(OR検索) 5. アソシエーションテーブルのフィールドを含むクエリー検索 プラグインのインストール CakeDC / search からプラグインをダウンロードします。 ※CakePHPのバージョ
This document is for a version of CakePHP that is no longer supported. Please upgrade to a newer release! PaginatorHelper¶ class PaginatorHelper(View $view, array $settings = array())¶ The Pagination helper is used to output pagination controls such as page numbers and next/previous links. It works in tandem with PaginatorComponent. See also Pagination for information on how to create paginated da
「Markdown CakePHP Plugin」は、MarkDown書式をレンダリングしてくれるビューヘルパーです。MarkDownについて勉強しているうちに出会ったので試し打ちです。 ダウンロードはこちら 実装 ダウンロードした解凍して配置(app/Plugin/Markdown) Controllerでプラグインをロードして、Markdownヘルパーをインクルード CakePlugin::load( 'Markdown'); var $helpers = array( 'Markdown.Markdown'); Views(ビュー) あとは、renderを使って表示 echo $this->Markdown->render( 'test **markdown** _syntax_'); デモ こちら よくわかってないのでこのプラグインいじりながら、Markdownの勉強を check
グローバル定数およびグローバル関数¶ CakePHP を使った皆さんの日常のほとんどの業務ではコアクラスやメソッドを用いることになるでしょうが、 ちょっとした役に立つ便利なグローバル関数も CakePHP にはたくさんあります。この関数のほとんどは CakePHP のクラスと一緒に使うためのもの(モデルやコンポーネントクラスのローディングなど)ですが、 他の多くは、配列や文字列の扱いを少し楽にしてくれるものです。 また、CakePHP のアプリケーションで利用可能な定数も同時におさえておきましょう。 これらの定数を用いることはよりスムースなアップグレードの助けになるだけでなく、 CakePHP アプリケーション内の特定のファイルやディレクトリを指し示す便利なやり方でもあります。 グローバル関数¶ 以下、CakePHP の使用可能なグローバル関数です。その多くは、デバッグしたり内容を翻訳した
環境 この記事で対象となっている環境は、Ubuntu 6.10, Apache 2.0.55, PHP 5.1.6, CakePHP 1.1.11.4064です。 問題の現象 Instalilng CakePHPにしたがってCakePHPを/home/foo/public_html/cakeにインストールし、/home/foo/public_html/cake/.htaccessにRewriteBaseも追加したが、http://example.com/~foo/cake/items/indexなどにアクセスすると、"404 Not Found"となる。 ウェブサーバのメッセージには、 The requested URL /home/foo/public_html/cake/app/webroot/index.php was not found on this server. とあり、in
正しいタイトル→ CakePHPのCookieComponent::writeのencryptがデフォルトでは暗号になってない件 ですね / “PHP はいつもわたしに新鮮な驚きを与えてくれる – 猫型の蓄音機は 1 分間に 45…” http://t.co/UkWZCHbtGN — Hisateru Tanaka (@tanakahisateru) 2013, 12月 11 とのことなので、対処方法。Controller::beforeFilter()で $this->Cookie->type('rijndael'); で、いいんじゃないでしょうか。($componentsのパラメータで初期化したいところですができなさげ。 なお、rijndaelが使えるのはCakePHP2.2以降です。 Cookie — CakePHP Cookbook v2.x documentation # sra
CakePHPでRESTful APIを作って、Backbone.jsのデータの永続化をサーバサイドで行う方法をメモしておきます。RESTful APIは、FuelPHP等、その他のPHPフレームワーク、Ruby on Rails等でも簡単に作成することができますので、各々好きなものを選択してください。ここでは、CakePHPを使った例を示します。 ここで制作したアプリケーションは、以下よりダウンロードできます。 Backbone ToDos with CakePHP RESTful API – GitHub 開発環境開発環境は以下の通りです。それぞれ執筆時点での最新バージョンを用いました。 ソフトウェアバージョン
日本でとても人気のあるフレームワーク、CakePHPですが話題の依存性管理ツールComposerと組み合わせる事でさらに便利に利用する事ができます。今回はその方法をVagrantを使ったデモと共にご紹介します。この記事で利用した環境のVagrantfileを使って頂くことでみなさんの手元でも同じ動作を確認できます。CakePHPをComposerからインストールした事が無い方は是非お試しください。 CakePHPをComposerで導入する利点 通常、CakePHPを利用する場合はZipかTarで配布されている最新版をダウンロードし、まるごとリポジトリに追加して開発を行うという形になります。すぐに動作させられるという点ではとても便利ですが、開発が長期になりフレームワークを最新版に差し替えたい場合に手作業が必要になります。またリポジトリ内に自分が記述したわけではないコードが大量に含まれるよう
ついに今日から25日まで続くAdvent Calenderが始まりました。 CakePHP Advent Calender2012の1日目を担当させていただく、たがみ(@DAI199)です。 Cakeを使い始めて半年程度の新米ですが、僕の知識をみなさんに共有するために今回の記事を書きたいと思います。 CakePHPアドベントカレンダー2012本家 http://www.adventar.org/calendars/40 Twitterハッシュタグ #cakeadvent2012 普段はFacebookと連携したアプリを量産しているため、今回の記事では、CakePHPとFacebookを連携し、ちょっとしたアプリを作ってみたいと思います。 デモアプリはこちら >>> 女の子の画像一覧を見てみる Facebookログインの実装 それでは早速Facebookログインを実装していきましょう。 以下
CakePHP2.xで、Securityコンポーネントを使用する際は、Viewのフォームは全てFormヘルパーを使って記述する必要がある。 Secutiryコンポーネントをオンにすると以下の動作を行うようになる。 Formヘルパーによって動的に生成されたTokenがhidden要素としてフォームに自動追加される。 POSTされたフォームのTokenを確認して、問題があるとThe request has been black-holedとして処理され、$this->request->dataは空になる。 上記の動作を無効にするには、コントローラのbeforeFilter()に $this->Security->validatePost = false; を追加する。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く