PHP
github.com In my case using Facebook WebDriver for Headless browser Testing, there is a trap on findElement with cssSelector. Assume you want to find the element(s) by css selector that you specify like what their style attribute doesn't h…
デイリーの集計絡みのバッチを書いていてちょいはまったのでメモ。 まず、 CakeのShellをcronで叩く際のOfficialの記載はこう 15 0 * * * cd /full/path/to/app && bin/cake myshell myparamこれが動かなかった。 次に試したのは、そもそもcdする必要ないん…
とりあえず行き着いた方法をメモします。 htmlによっては、先頭にxmlステートメントが混ざってくる場合が稀にあるので、最初に除去しておく。 さらに、なぜかscriptやstyleの破片などがノイズとして紛れ込むケースが多々あるので、これらも除去。newDocument…
CakePHP3を使ってて一番助かったなあと思う機能が、PC/スマホのview切り替えです。実装はめちゃくちゃ簡単。・PC版のviewは通常通りsrc/Templateに作成します。 ・plugins直下にスマホ用のディレクトリを作成(今回は「Sp」というディレクトリを作成) ・p…
ちょっとハマった。。。PHPでDBの取得結果をCSVーDLするスクリプトを書き、実際にDLして開いたところ「SYLK:ファイル形式が正しくありません。」という警告が出ました。 最初は、エンコードやらでなんかおかしなことになったか?と思ったんですが、警告が出…
PHP7の三項演算あたりを本格的に使ってみましたが、快適すぎてやばいです!あるkeyが存在するかどうかわからない配列をマージするような場合、 いちいちisset()しなくてよくなった!! array_merge( $a['key'] ?? [], $b['key'] ?? [], $c['key'] ?? [], $d…
チャットワーク(Chatwork)のAPIを使って指定ルームにメッセージを送る PHPのクラスを作ってみました。バッチ処理の結果をチャットワークで見たい、メールの設定がめんどくさい、 みたいなときに使えるかも。。 クラスファイル:Chatwork.php
PHPでサイズの大きいファイルを読み込む時のメモ。 外部ファイルを全部読み込めればOK、ただし読み込めなかった場合には エラーを返すというロジックを組みたかった。 たとえば、外部サイトをスクレイピングする際に、 HTMLファイルサイズが一定サイズを超え…
題名の通り、使ってみたのでめもします。。 やったこと ・PHPのサーバアプリでGoogleSearchConsoleの検索アナリティクスのデータを取得。 ・google-api-php-clientを利用 ・複数アカウントのGoogleSearchConsoleに登録されている全てのURLの データを取得 ・…
wordpressのテーマを作成する案件があり、テストサーバで動作確認したものをクライアントのサーバに導入しテーマを適用ところ、画面が真っ白に。。。 とりあえずini_set()でエラーを確認してみると、 どうやら配列を返すメソッドをコールしたところで落ちて…
とあるPHPの実行ファイルがあって、その中で別のクラスを読み込んでいます。 読み込んだクラスの中でこれまた別のjsonファイルを読み込もうとするが、 なぜか読み込めずにちょいハマり。。。 ディレクトリ構造はこんな感じ [DocumentRoot]/index.php [Docume…
こんなときのベストプラクティスって何だろうか。。 例えば、DBから取ってきたデータをcsvにしてDLさせたい場合など、 UTF-8でエンコードされたデータを扱うことが多いかと思います。そのままDLさせてエクセルで開くと文字化けすますね。 エクセルがCP932(Sh…
なかなか使うことは少ないと思いますが、PHPからbatファイルを実行する 方法をメモっときます。PHPの組み込みメソッドで「exec」という外部プログラムを実行するものがあります。 例えば、以下のように記載するとphpファイルと同階層にあるtest.batを実行で…
クライアント側に文字列を返すサーバ側の処理を考えた際に、 そのまま返すと文字列にscriptが含まれる場合にscriptが動作してしまうことも考えられます。そこで、サーバから文字列を返す際には、HTMLを形成する特殊文字をエスケープする必要があります。 PHP…
今回はsessionとcookieについて少しおさらい。 あとPHPで具体的にどう使うか、についても触れておきます。 sessionとcookieって? 大まかに言うと、両者ともある一定期間データを保存しておく仕組みです。 ただ、データをサーバ側に保存しておくのか、クライ…
PDOでクエリを実行する方法として以下の方法があります。⑴ queryを使う ⑵ prepare後にexecuteする 具体的な使用例は以下の通りquery $sql = 'select * from userTable'; $stmt = $dbh->query($sql); prepare $sql = 'select * from userTable where id = ?';…
PDOを使ってDBから検索結果の件数を取得したい場合、 PHPの公式マニュアルでは、rowCount()というそれらしきメソッドがあります。ただ、公式マニュアルによると「rowCount()はすべてのデータベースでうまく作用するとは限らない」とのこと。。。そもそも、ro…