skillup

技術ブログ

PHP

CakePHP3でのコレクションに関して

投稿日:

プログラミングにおいて基礎となるのは配列、ハッシュの処理とオブジェクト指向の使いこなしです。

配列、ハッシュの処理に関しては自前でメソッドを書いてもよいですが、バグの温床になりやすいので、ライブラリを使うのがもっともよいでしょう。

CakePHPだとすでにコレクション関連のメソッドがそろっていますので、ここから活用できます。

Unitテストのプログラムに書いてあげれば実際のアプリを動かさなくても試せるので非常に楽です。

本来の使い方とは違っていますが・・・

ちなみにファイルパスはアプリのディレクトリのすぐ下/tests/TestCase/Util/SampleUnitTest.php

です。テストの実行は 同じ位置で vendor/bin/phpunit tests/TestCase/Util/SampleUnitTest.phpで行けます。

詳しくはここを。

試したのは検索系と集計と抽出タイプなど実務で頻繁に出てくるパターンのものを出しました。

サンプルはすべて以前紹介したunderbar.phpとほぼ同様のパターンですね。

このパターンに限らず関数型のプログラミングになれていればほぼ同じ要領でできるかと思います。

-PHP
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPでのスクレイピング

本日はPHPスクレイピングについて。 スクレイピング自体はRuby、Javaとやってきました。 PHPに関しては昔、正規表現でごりごりやってましたね。これを使えば何でもできるんで一番早いです。 が・・ …

no image

PHP7に関して

先週きづいたのですが、PHPが5.6から7になりましたね。 まあ当分はまだPHP5で開発していきますが、herokuがいきなり7になり、アプリが動かないということが起こりました。 7対応させたかったん …

no image

PHPでのPDF出力 テーブル

PDFで何かを出力する場合、ほとんどが納品書や請求書などの帳票でしょう。 これらもfpdfで出力することができます。 Contents1 ソース2 サンプル3 参考リンク ソース [crayon-5c …

no image

inotifyによる検知

以前、pynotifyというpythonの検知プログラムを書きましたが、元々はinotifyというLinux上のパッケージのライブラリが元になっています。 以前調べたリンク 監視検知処理に関して 実務 …

no image

CakePHP3 リクエストパラメーターの扱いについて

CakePHPのリクエストの扱いについて。 ほとんどのフレームワークですと、HTTPリクエストの扱いに関してはフレームワーク側で実装されていることが多いので、フレームワークを使い始める場合、この部分に …