nginx nginxで高負荷時に「upstream timed out (110: Connection timed out) 」とかエラーがでる ■nginxで稀にエラーが発生して500系のエラーがでる以下のようなエラーメッセージが吐き出されていました。APIサーバで発生していたので、結構たくさんのアクセス(1秒間に1500~2000アクセス)あったときに本当に稀に出ていました。up... 2018.03.27 2018.10.27 PHP5nginx
PHP5 phpのjson_encodeがFALSEを戻すときはUTF-8の文字化けの可能性 json_encode関数を使って、jsonに変換していた時のエラー何でか稀にFALSEが戻るときが有ったのです。調査してみた結果、どうもUTF-8でも変なゴミバイトが混じっていると動かないときがあるっぽいですね。以下のように、mb_再度U... 2018.03.23 2021.06.30 PHP5
PHP5 PHPのcurlからproxy経由でサイトアクセスをするサンプルを書いた PHPのcurl関数たちはとても便利です。PHPのプログラム上からサイトやAPIにアクセスするためには必須の関数となっています。今回は、curlでサイトやAPIに接続するときにproxyを経由して通信を行うサンプルを紹介します。■サンプルコ... 2016.07.13 2018.10.27 PHP5
PHP5 SublimeText3でCakePHPのctpファイルのシンタックスハイライトを関連付ける PHPの開発ではSublimeText3を利用しています。で、このシンタックスハイライトがあると、タグの種類や、変数などが色付けされて表示されます。ですが、デフォルトの設定だとCakePHPのctpファイルが【Plane Text】と判断さ... 2016.04.14 2018.10.27 PHP5
PHP5 【PHP関数】レーベンシュタイン距離を求める関数の日本語対応 ■レーベンシュタイン距離とはこのコピペチェックツールで利用しているアルゴリズムです。編集距離とも呼ばれています。2つの文字列を何回変更すると同じ文字列になるかを求めるアルゴリズムです。レーベンシュタイン距離は数値が小さいほど同じような文字列... 2016.03.08 2018.10.27 PHP5
PHP5 PHPスクリプトからcURLを使ってCookieのやり取りをするサンプル PHPのcURLを使ってウェブサイトにアクセスする方法を以前にいくつか紹介しました。■CURL_MULTIでPHPから並列アクセスを実現するサンプルを書いた■PHPでCURLを使ったウェブアクセスのサンプルコード今回はcURLを使ってcoo... 2016.02.20 2018.10.27 PHP5
PHP5 【PHP】データ内に改行のあるCSVの処理方法 こちらの記事でPHPでのCSVファイルのダウンロードのサンプルを書きました。この記事では、CSVファイルの読み込みのサンプルを紹介します。■特徴SplFileObjectを利用しているため、エクセルで読み込みできる形式のCSVを読み込み可能... 2016.02.16 2018.10.27 PHP5
PHP5 curl_multiでPHPから並列アクセスを実現するサンプルを書いた PHPでは並列処理を実現する機能は基本的にありません。しかし、cURLを複数同時に実行するcurl_multiを利用すれば並列処理が一定可能です。並列して実行できるのでAPIへ効率よくアクセスすることが可能になります。■並列にサイトにアクセ... 2016.01.26 2018.10.27 PHP5
PHP5 【PHP】preg_splitの文字化けを回避する カンマや読点で文字列を分割するときに、preg_splitを使っています。正規表現で一致した部分で文字列を分割してくれる便利な関数です。この関数ですが、文字化けをすることがあります。■文字化けする記述下記のような記述だと、文字化けします。$... 2015.12.06 2018.10.27 PHP5
PHP5 PHPからmongodbへ接続するまでの手順 ■PHPからmongodbへ接続するまでの手順PHPからmongodbにアクセスできるようにするための手順を紹介します。mongodb本体のインストール方法は【YUMでmongoDBをインストールする】を参考にしてください。1.コンパイルに... 2015.10.25 2016.05.23 PHP5
PHP5 curlを使ってPHPのプログラム上から対象サイトへアクセスするサンプル PHPでCurlを使ったウェブサイトへのアクセスのサンプルです。いつもすぐに忘れてしまうので、書き残しておきます。こちらの記事でcurl_multiによる並列アクセスのサンプルについても書いています。よろしければ、併せて確認してみてください... 2015.09.22 2018.10.27 PHP5
PHP5 PHPで指定ディレクトリ以下のファイル一覧を取得する PHPで指定したディレクトリの以下のファイル一覧を取得するサンプルです。RecursiveDirectoryIteratorを利用しているので、非常に簡単にファイル一覧を取得することができます。こちらで紹介している、ZIPファイルでアップロ... 2015.03.28 2016.05.23 PHP5
PHP5 PHPのプログラム上でZIPファイルを展開する方法 PHPでZIPを展開するサンプルです。ZIPファイルでアップロードした内容をサーバ上で処理するときなどに利用できるかと思います。パスワードのないZIPにのみ対応しています。/tmp直下にランダムな名前を生成して、そこに対してzipを展開しま... 2015.03.28 2016.05.23 PHP5
PHP5 【PHP】誰にでも簡単に使える【CSVをダウンロードさせるサンプル】を書いた 今でもCSV形式でダウンロードさせるシステムは多いと思います。よく使うのでサンプルを書きました。こちらにCSVを読み込むサンプルも書きました。併せて参考にしてみてください。■このサンプルの特徴▼エクセルで開いても文字化けしないエクセルで開い... 2014.11.05 2019.02.12 PHP5
PHP5 phpで配列に入っている全要素に対してtrimをする 配列に入っている要素に対してtrimをする方法です。POSTやGETされてきたデータに対してtrimをすることで、よりサービスの品質が上がると思います。ループをして1つずつtrimをしてもいいのですが、array_mapを利用すれば一行で配... 2014.10.28 2016.05.31 PHP5
PHP5 PHPで◯日後、◯日前など日付の加減算をする PHPで日付の加減算をするサンプルです。よく忘れるので、書いておきます。date関数とstrtotime関数を組み合わせて実装します。// 現在日付から○日前date("Y/m/d", strtotime("-1 day" )); // 一... 2014.10.25 2016.05.31 PHP5
PHP5 PHPで配列にはいっているデータのうち、空っぽのものだけ削除する 配列にはいっているデータのうち、空っぽのデータを削除する方法です。以下のようにarray_filterを利用します。$list = array_filter($list, 'strlen'); 2014.09.16 PHP5
PHP5 PHPで配列にはいっているデータに対してtrimを適用する PHPで配列にはいっている情報に対して、一括でtirmをしたい場合があります。POSTされてきたデータ等ですね。以下のように指定すると、$listにはいっている情報に対してtrimを実行してくれます。trimの部分は別の関数でも大丈夫です。... 2014.09.16 PHP5
PHP5 PHPで$_FILESが空っぽのときの主な原因 特に何かエラーがでているわけでもないのに、$_FILESの中身が空っぽになってしまった時の大体の原因です。■php.iniの容量制限設定に問題があることが多いpost_max_sizeとupload_max_filesize の上限値にあた... 2014.08.27 PHP5
PHP5 phpの閉じタグ問題 PHPのプログラムを書くとき、一般的に以下のように記述をします。<?phpclass Hogehoge {ここにファンクション一覧}で、今回問題となるのが、最後に?>をつけて閉じるか閉じないか、という話です。■?>をつけるとどうなるか。普通... 2014.08.01 2016.03.09 PHP5