PHPで日付の計算するには?
全く問題ないですね。この「.000Z」が付いていてもいけますね。 グリニッジ標準時を求めます。 コンストラクタに「-9 hour」でいけました↓。便利です。 1秒進めます。 1分進めます。 1時間進めます。 1日進めます。 1週間進めます。 1月進めます。 1年進めます。 1週間前の日付を取得します。
全く問題ないですね。この「.000Z」が付いていてもいけますね。 グリニッジ標準時を求めます。 コンストラクタに「-9 hour」でいけました↓。便利です。 1秒進めます。 1分進めます。 1時間進めます。 1日進めます。 1週間進めます。 1月進めます。 1年進めます。 1週間前の日付を取得します。
GraphQL で問い合わせる基本形です。squid のプロクシ経由で送信することを想定しています。 ↓実行結果です。化石システムでも動きました。
PHP5.2 から GraphQL を使うには? Read More »
少し前に、文字列の先頭が / から始まっているかを確認する処理をなんとなく書きました。 そうえいば、文字列の先頭の文字は[0]で取得できるよなぁと思いました。 大体は動きますけど、これには違いがありました。 ①空文字の場合、[0]のやり方だと警告がでます。str_starts_with では警告はでません。 ②マルチバイトの場合、[0]のやり方だと false になります。str_starts_with だと true になります。 そういうことに気を付けて、プログラムしましょうというお話でした。 きっと、str_starts_with 以前は substr や mb_substr の処理だったのだと思いました。ワーニングはでません。
可変長引数の後の引数の動作を確認してみましょう。↓下のようなコードが実行できるか確認しました。理想は $a には 1 が入り、$b には [2,3,4] が入り、$c には 5 が入るかもしれない。と思ったわけです。 結果。エラーになってしまいました。この書き方はできません。
PHP 可変長引数の後に引数は定義できるか? Read More »
動作を確認してみましょう。↓下のような関係で、Childクラス から testメソッド を実行したら、どのクラスの helloメソッド が呼び出されるでしょうか? 結果です。 ↑Childクラス から testメソッドを実行すると、①self の場合は、それが書かれているクラスの helloメソッド を呼び出す。②static の場合は、継承後のクラスの helloメソッド を呼び出す。ということが分かりましたよね。 因みに、Childクラス に Parentクラス と同じ __invokeメソッド を定義すれば、self は Childクラス になります。
PHP の self と static について Read More »
問題の箇所は、modal2 を __getマジックメソッド で取得している箇所で、array(‘modal2’=>[‘feedback’=>”]) の feedback に値を設定しようとしたところでエラーが発生しました。 LiveDataクラス の __getマジックメソッド の箇所です。 おそらく以下のようにすれば直ると思いますが、「1行で書けるようなことを、わざわざ3行も使って書くか」と 解決策は、__getマジックメソッド で ArrayObject を返すようにします。こうすれば配列形式で値の設定ができるようになります。
PHP Indirect modification of overloaded property *** has no effect のエラーがでた Read More »
答え ということで、foreach に explode の結果を与えると、予期せぬ「空のループ」が回ってしまう可能性があります。 空のループを回さない方法は、explode の前に空文字かのチェックを入れます。
PHP 空の文字列を explode した時の挙動 Read More »
可変変数に配列のキーも含めようとすると、「Undefined variable」になります。 extract でもダメですね。登録された変数の数には0が返ってきます。 可変変数に配列のキーも含めるには、eval関数を使います。
PHPで配列の可変変数を作成するには? Read More »
Laravel で var_export の結果をログファイルに出力するなら↓下のように書きます。 「var_export does not handle circular references」のエラーが表示されたら、var_export の代わりに print_r を使う。 Laravel で print_rの結果をログファイルに出力するなら↓下のように書きます。 昔 、わざわざ下のようにやってしまっていたかも・・・。