kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

PHP

phpとdocker-compose環境でのxdebugの構成 (更新)

PHP

開発環境がいろいろと代わり以前確認用に作成したxdebugプロジェクトが動作しなくなっていたため更新しました。 原因としては mac book の更新( m1 チップの影響 ) xdebugのバージョンアップ ( 2 -> 3系 ) 使用環境 phpstorm docker php-fpm , nginx mac boo…

phpstorm + Vagrant on Docker + xdebugのremote debug環境構築 <mac>

Docker for macが遅くなってきたため、Vagrant on Dockerに切り替えました。 その影響でPHPの開発時にdebugができなくなり困っていたので、環境を設定してみました。 設定の概要 以前docker for macで設定した内容でほぼ動作をしたためまずdocker for macでd…

phpstorm + docker + xdebugのremote debug環境構築 <mac>

phpstorm + docker + xdebugでのremote debugの環境を作っていなかったので、作ってみました。 mac book docker-compose phpstorm php 情報が多くなる中で構築に時間がかかったため、記事にしてみます。 github.com xdebug xdebug.idekey = "PHPSTORM" xdebu…

PHPUnitはじめ

PHP

PHPUnitのホームペーシをみて、動作させてみるところまでやってみます。 開発環境はMacを使用して、composerを用いています。 まずは「Hello World!」的なことからやってみる。という最初の壁を超えてみます。 Getting Started 最新バージョンはPHPUnit7とい…

cakephp1.2->2.10への移行

PHP

要件としては以下を実施しようと、計画し実行したときの記録です。 cakephp1.2 -> cakephp2.10 php5.5 -> php7.2.9 apache -> nginx 移行へのきっかけ 自身でOKRを取り組もうと決めた時に、プラットフォーム更新が真っ先に思いついた取り組む決意をしました…

DBスキーマの管理 phinx

DBののスキーマ管理をいままでやっていなかったため、複数人での開発になりDBへの変更がよくわからない状態になってしまったので、本格的にマイグレーションをいれてみました。 Phinx Phinx マイグレーション - 3.6 Introduction — Phinx 0.9.2 documentatio…

PHPはいい言語だと思う

PHP

社会人1年目のときに配属された部署でPHPを初めて触りましたね。 その言語をいまだに触っているのは驚きです。 PHPはまだまだ生き残れる言語だと思っています。いい言語です。 PHP4 最初はPHP4系でした。もうよくわからず書いてました。 HTMLは書いたことも…

composerの管理も考えてみる

PHP

npmの管理について考えてみたが、phpも使用しているためcomposerでのパッケージ管理も整理したいです。 調べてみましたが、基本的な方針は同じみたいでした。 composerでインストールできるファイル群は、バージョン管理には含めない。 管理ファイルのみをバ…

PHP memcached が遅い件にぶち当たりましたが、解決しました。

PHP7に変更して、PHP memcacheがないことでいろいろと調べながらmemcachedを導入してみました。 ただmemcachedを使った場合だけものすごく遅くなったため、対応した内容をメモで残しておくための記事です。 結論から libmemcachedが1.0.16だったのが悪かった…

PHPのコンパイルってどうやるの?

PHPをいれる際にどういれいているか? yumやapt-getで導入 phpbrew xampp ソースからコンパイル いろいろなやり方がある現在ですが、いろいろな手段をしっていると幅がひろがっていいと思います。 PHPのコンパイルを初めて試したとき、yumの利用しやすさを実…

やっと1年かかった不具合が解決しました。

PHP

プログラムというのは上から下へ流れていく。 PHPならなおさらスレッドの考えはしなくていいため、プログラムで一連の流れを追うだけで原因を探れるはずだがここ1年解決しなかった。 最初の対処(ログ埋め) とにかくログを埋め込みました。本来ない重複デー…

PHPでの使用memory表示を利用してみた

PHP

PHPでmemory使用量を調べる機会が訪れるとは、個人的におどいています。 PHPでのメモリ設定はphp.iniのmemory_limitで指定します。 これ以上のメモリ使用になると、Fatalエラーが発生します。 エラーの表示をしていない場合は白い画面で止まってしまうかなと…

php.jsがよさそう

PHP

いろいろな言語を書いているとこの関数ないのかよー。と思うことがあります。 PHPを主としているので、PHPの関数を他の言語で使いたいと思うことは結構あったりします。 そういう部分をJavascriptにおいて実現してくれてそうなやつを知りました。 「php.js」…

次はPHP7ですね

PHP

PHPのメジャーバージョンアップがPHP7らしいですね。 PHP 5の次はPHP 7 !? - PHPコミュニティで議論中 PHP 5の次はPHP 7 !? - PHPコミュニティで議論中 | マイナビニュース 結構前からの話だったんですね。 PHP7を知った記事としてはここですね。 PHP7の現状…

phpbrew を触ってみたい。

PHP

phpbrewを利用してPHPのバージョン管理ができる。という記事を読んでいる。 最近PHPのバージョンについてはかなり気にしていた。 LinuxでyumなどでPHPを導入すると5.3が入る。 しかしPHP5.3についてはそろそろ完璧にサポートが切れると思ってたので、5.4以上…

PHPの数値について考える(3)

浮動小数点数のページを見た後、整数の項目で気になるのがありました。 echo (int) ( (0.1+0.7) * 10 )."\n"; // 7が出力されます! これって本当!? って、ことで試してみました。 本当に「7」だ。 説明は浮動小数点数の精度で書いてあります。 さらに、十…

PHPの数値について考える(2)

PHPの浮動小数点数で気になったことが。 floatの比較について「等しいかどうかを比較するのには問題があります」って。 あぁ、そうなのか。どういう場合だろ。 まず浮動小数点数 (あるいは "float", "double", "実数") の指定から。 規約として LNUM [0-…

phpの数値について考える

paizaをやっていると「大規模データでエラーとなりました。」をよくみる。 PHPでやっているが、大規模データでエラーってことは数値の判定とか? 詳細はわからないが、PHPでの数値の扱いってどうなってるのか気になりました。 PHPは型宣言をしませ…

PHPでの標準入力

そういえばPHPで標準入力をやったことがなかったが、きっかけがあったので。 WEBやってると、標準入力いわれるとGET?POST?か迷った。 C言語で標準入力といわれれば「scanf」を使うとイメージできるけど、 案外やってないとしらないことがいっぱいだ。 trim…

FuelPHP を触ってみて。

PHPのフレームワーク「FuelPHP」を触る機会があったので、所感を書きます。 FuelPHPは2010年10月にプロジェクトを開始したらしい。 リリースは2011年8月23日。 環境はPHP5.3.3+ MITライセンスなので、商用でも使用可能 新しいほうのフレームワークだと思い…

PHPの日付判定について考える(5)

前回の月計算の場合で一番ありそうなのは、 月だけを求めるときとかか。 5月30日の1ヶ月後で「6」 5月31日の1ヶ月後で「7」 閏年でない場合 1月28日の1ヵ月後で「2」 1月29日の1ヵ月後で「3」(3月1日) 1月30日の1ヵ月後で「3」(3月2日) 1月31日の1…

PHPの日付判定について考える(4)

PHPでの時間処理でのはまりどころ?? date('Y-m-d H:i:s', strtotime('2014-05-31 +1 month')); 表示結果:2014-07-01 00:00:00 5月から1ヶ月を追加した日付だから6月がでてほしいような・・・ この結果自体はバグでないです。 6月31日??を求めよう…

PHPの日付判定について考える(3)

PHPでの日付比較で詰まった部分を書いていますが、他のところでも影響していて悩んでいた経緯があります。 DBでやろうと試す 最初はDBの時刻型から ○時間後を求めるをやっていた。ある時間から +27時間後を登録しようとしてエラーが発生した。理由としてはpo…

PHPの日付判定について考える(2)

日付の出力 現在の日付表示用$now = date("Y-m-d H:i:s"); 現在のタイムスタンプ$time = time(); 日付の比較 strtotime 比較の式はtimestampならすぐに理解できた。 ただの数字なので、とても比較としてはわかりやすい。 if ( $time >= strtotime('2014-06-0…

PHPでの日付の判定を考える

PHPで日付を出力する場合、いくつかやり方があると思います。 日付型から表示形式を指定して表示する ・date — ローカルの日付/時刻を書式化する date関数へtimestampを渡す値を作って、指定した表示形式で表示する ・strtotime — 英文形式の日付を Unix タ…

phpのバージョンなに入れよう。。。

最近PHPのサーバーにPHPのバージョンなにを入れるか考えることがあったり。 CentOSつかってることもあってそこが基準で考える。 ・標準のyumだとPHP5.3 ・ZendServerCEをいれてもPHP5.3 ・PHP5.3のサポートがきれる??(これはいつなんだ) http://php.net/…