PHPでもrange()関数を使ってみよう

2017年8月1日 | カテゴリ: PHP
pythonでは一定の回数ループさせたり、一定の範囲の数列を扱うために、range()関数があります。 pythonのプログラムでは頻繁に使われる便利な関数なのですが、実はPHPにもpythonと同様、range関数が標準で用意されています。 今回はrange関数を使っ...


PHPでは、define()関数を使用して、定数を作ることが可能です。 定数を切っておくと便利なのですが、定義の内容はシステム全体に及ぶため影響範囲を調べ辛いというデメリットもあります。 古くからあるアプリを保守する場合は、そもそも、何のdefine定...


PHPで利用できるマイクロフレームワークの一つに、Slim Frameworkというものがあります。今回は、Slim Frameworkで、302リダイレクトを行う方法を説明します。 Slim Frameworkでは、HTTPのリクエスト、レスポンスの情報をPSR-7の規格に準じた形で実装し...


最近のモダンなPHPプログラムでは、エラー処理を行う際に、try-catchを利用した例外処理で対応する場合が多いです。 全てのプログラムを自作する場合は、全てのエラーを例外として統一的に扱うことができます。ですが、古いライブラリなどを利用する場...


PHPでは、XDebugを利用することで、ステップ実行などが行えますが、一方で処理が遅くなるデメリットがあります。 プログラムの特定の処理で、デバッグを行う意図はないけれども、XDebugのせいで非常に遅くなる場合、プログラムからXDebugを無効化できます...


既にComposerが導入済みのプロジェクトに、後から自分がアサインされる場合、Composerにかかわる環境を調査したい場合があります。 最初に調査を始めるときは、インストールされた環境に変更を加えずに設定の内容だけを確認したいものです。 今回は、...


PHPのパッケージ管理ツールであるComposerですが、問題の切り分けなどで、いったんComposerにまつわる全てのファイルを削除する方法を説明します。 ## Composerを構成するファイル Composerのプログラム自体は、composer.pharファイルの1ファイルの...


PHPでファイルを削除したい場合、unlink()関数を使用することファイルの削除が出来ます。 ですが、ファイルを削除するのではなく0byteに切り詰めたい場合があります。 ファイルを削除せずに切り詰めたい状況ですが、例えば何らかの事情があって、ファ...


Composerを利用して短時間で大量のパッケージを取得すると、GithubのAPI実行回数制限に引っかかってまうばあいがあります。上限に掛かるとComposerは、認証のためにgithubのユーザIDとpassowordを要求します。要求通りIDとパスワードを入力すればユーザ認...


社内LANなど、外部へアクセスするときにProxyサーバが必要な環境で、composerを使用すると下記のエラーが出てパッケージのダウンロードに失敗する場合があります。 ```language-bash > composer require monolog/monolog file could not be downloade...


XDebugなどのデバッガがない環境でプログラムの開発・デバッグを行っているとき、変数の中身をjson_encode()で確認したいときが良くあります。ですがjson_encode()はデータが複雑だったり、サイズが大きいと可読性が悪いという問題があります。 今回は...


Composerを使用してパッケージ管理を初めて行おうとしたとき、エラーなどによって意図した通り動作しない場合があります。 トラブルが発生したときに、まず最初に行うべきチェック項目がgetcomposer.orgに掲載されているので、この内容を元にチェック項目...


Composerでは、composer.jsonファイルへrequireを記載することで、他のパッケージへの依存性を規定することができます。これにより、インストールされていることが前提となるパッケージを自動でインストールしたり、逆に正しく動作しない環境へ誤ってパッ...


## 何を参考にComposerパッケージを選定していますか? Composerを使用していると、必要な機能を満たすパッケージが複数ある場合、どのパッケージを利用すればよいか、パッケージの選定に頭を悩ませることが多いです。通常はpackagistで表示されるパッケ...


PHPを使って小さなツール、具体的には2~10画面程度の規模のツールを作りたい場合があります。 このような規模感のツールを作る場合、SymfonyやLaravel等のフレームワークを使うと、やりたいことに対してプログラムの規模が少し大げさになってしまいま...


PHPのパッケージマネージャであるComposerには、インストールしたパッケージのオートロード機能が用意されています。 "vendor/autoload.php"をrequireするだけでパッケージ内のクラスをnew出来るのは非常に便利ですが、自作したパッケージを利用する場...


昔のPHPは、コーディング規約がPear, Zend, CakePHP, Symfony, WordPressなど、フレームワークごとに異なっており複数ライブラリを導入した場合に、プロジェクト全体でコーディング規約を統一させることが困難でした。 ですが、最近ではPHP-FIG(PHP F...