Category Archives: プログラム カテゴリ "プログラム"のRSS  

XDebugを有効化したときのメモ

2017年2月23日 (カテゴリ: PHP:)

chromeにextensionを追加する インストール先 Xdebug helper インストールされたextensionのアイコンを右クリック -> オプションを選択する IDE keyの項目を、使っている開発環境に合わせる PHPの環境を作る XDebug.dllをダウンロードする https://xdebug.org/download.php php.iniに下記の定義を追加する [PHP_XDEBUG] report_zend_debug = 0 zend_extension = “C:\home\php\xdebug\php_xdebug-2.5.0-5.6-vc11-x86_64…


続きを読む

[FuelPHP]複数DBへ接続時、エラー”Database type not defined in”が出るときにチェックする事

2017年2月20日 (カテゴリ: PHP:)

FuelPHPでは、DBへの接続定義を, fuel/app/config/$ENV/db.phpで管理されています。 インストール直後の開発環境では、以下のようになってます。 return array( ‘default’ => array( ‘connection’ => array( ‘dsn’ => ‘mysql:host=localhost;dbname=fuel_dev’, ‘username’ => ‘root’, ‘password’ => ‘root’, ), ), ); これを、複数DBへの接続対応するために、例えば’default2…


続きを読む

[FuelPHP]Windowsだと問題ないのにLinux上だとClass not foundエラーが出るときにチェックすること

2017年2月16日 (カテゴリ: PHP:)

Windowだとクラスのロードが問題なく行えるのに、Linux上だとクラスのロードでエラーになる場合は、ファイル名の大文字・小文字のルールが間違っている可能性が高い(主に開発環境はWindowsで本番環境がLinuxだと気づきにくい)。 例えば、Model/ItemMst.phpという名前でモデルを作っている場合、Windowsだとファイル名の大文字小文字を無視するのでphpファイルの読み込みが行えるが、LinuxだとModel/itemmst.phpを読みに行こうとしてエラーになってしまう。 newで指定されだクラス名に対して、実際に何のファイル名でクラスローダがロードを試みているか確認した…


続きを読む

[php]phpQueryをcomposer経由でインストールする

2017年2月15日 (カテゴリ: PHP:)

PHPからwebページのスクレイピングを行うための有名なライブラリにphpQueryがあります。 phpQueryを使用すると、htmlに対してjQueryのようなセレクタで、取得したいタグの検索などが簡単に行えるので便利です。 今回はこのphpQueryをcomposer経由でインストールしたうえで、簡単な動作確認を行ってみました。 作業手順 phpQueryパッケージをインストールする まず、composer self-updateコマンドでcomposer自身のアップデートを行ったうえで、requireコマンドを使用してphpqueryパッケージのインストールを行います。 compose…


続きを読む

[FuelPHP] composer updateでfuelphp/upload 2.0.6のアップデートエラーが出るとき

2017年2月14日 (カテゴリ: PHP:)

FuelPHPのフレームワーク使用時にcomposer updateを実行した際、下記のエラーがでてパッケージをアップデートできない場合があります。 > composer update Your requirements could not be resolved to an installable set of packages. Problem 1 – fuelphp/upload 2.0.6 requires ext-fileinfo * -> the requested PHP extension fileinfo is missing from your system. …


続きを読む

[php]composer self-updateでエラー[Composer\Downloader\TransportException]が出るとき

2017年2月13日 (カテゴリ: PHP:)

composerを使用していてcomposer self-updateコマンド実行時に下記のエラーが出る場合があります [Composer\Downloader\TransportException] Your configuration does not allow connections to http://getcomposer.org/versions. See https://getcomposer.org/doc/06-config.md#secure-http for details. このエラーが出る理由ですが、composerはファイルのダウンロードをSSL対応したサイトから…


続きを読む

[php]composer self-updateでエラー[required for SSL/TLS protection]が出るときの対処法

2017年2月12日 (カテゴリ: PHP:)

PHPでcomposerのアップデートを行った時、opensslのライブラリでSSL/TLS protectionエラーが出る場合があります。※下記の例の”composer self-update”は、windowsの場合は環境によって”php.exe composer.phar self-update”になる場合もあります。 > php.exe composer.phar self-update [RuntimeException] The openssl extension is required for SSL/TLS protect…


続きを読む

‘cURL error 60’エラーが出たときの対処法 ‘cURL error 60: SSL certificate problem: unable to get local issuer certificate’

2017年2月11日 (カテゴリ: PHP:)

cURLを使用したプログラムでhttpsのサイトにアクセスしたとき、下記の例外が発生しました。 この問題を解消するために、調べた事・行ったことののメモを書いておきます。 環境: Windows10, PHP7.0.14, GuzzleHttp経由でcURLライブラリを利用 Fatal error: Uncaught exception ‘GuzzleHttp\Exception\RequestException’ with message ‘cURL error 60: SSL certificate problem: unable to get local issuer certificat…


続きを読む

[PHP]mcrypt_module_open()でエラー”Call to undefined method”が出るとき

2017年2月6日 (カテゴリ: PHP:)

phpのプログラムで、mcrypt_module_open()メソッドをコールしたとき、Call to undefined method…ワーニングが出る場合があります。 この場合、pho.iniでphp_mcrypt.dllモジュールが読み込まれていない可能性があります。php.iniを確認し、extensionの指定がコメントアウトされていたらコメントを外してください。 ;extension=php_mcrypt.dll ↓ extension=php_mcrypt.dll Windows環境で動作させる場合、PHP5.3以降ではMcryptのライブラリがphp.exeにstatic …


続きを読む

[FuelPHP]DB::query()を使って、SQL直書きでDBアクセスしたい

2016年8月27日 (カテゴリ: PHP:)

FuelPHPでDBをアクセスしたい場合、FuelPHP標準でO/Rマッパや、Model_Crud、クエリビルダー、DB::query()メソッドなど、様々なアクセス方法が用意されています。 簡単なプログラムを作る場合は、O/Rマッパ(ORMパッケージ)などを使ってもよいのですが、データのアクセスが多くなることが予測される場合、DBアクセスが抽象化された形での処理はパフォーマンスが低下する問題が後々出てきてしまいます。 このようなリスクがある場合、SQLを直接かけるDB::query()メソッドを使用すると、抽象化によるオーバーヘッドもないし、DBサーバの実行計画を見ながら詳細なクエリのチュー…


続きを読む

[C#]Form上の全TextBoxに対し、Ctrl-Aで全選択できるようにする方法

2016年6月27日 (カテゴリ: C#:)

VisualStudioにてWinFormを使用したプログラムを作成時、TextBoxに対してCtrl-Aでテキストの全選択をしたい場合があります。 KeyDownイベントでSelectAll()させればよいのですが、対象となるTextBoxが多いときは、イベントハンドラを追加するのに手間がかかります。 このような場合は、下記のコードでForm上に存在する全てのTextBoxに対して、”Ctrl-Aで全選択”の機能をつけることができます。 private void Form1_Load( object sender, EventArgs e ) &#12…


続きを読む

[ロリポップ]MySQLサーバのIPアドレスを調べる方法

2016年5月30日 (カテゴリ: PHP:)

ロリポップのMySQLサーバへSSHトンネリング経由で接続したかったのですが、サーバのIPアドレスが分からなかったので調べてみました。 調査時点で、下記のIPになってました。 mysql501.phy.lolipop.jp : 157.7.105.174 mysql502.phy.lolipop.jp : 157.7.106.56 mysql503.phy.lolipop.jp : 157.7.106.57 mysql504.phy.lolipop.jp : 157.7.105.175 mysql505.phy.lolipop.jp : 157.7.106.58 mysql506.phy.lo…


続きを読む

[DataGridView]改行を含むセル値を、Excelに貼付できるようにする方法

2016年5月23日 (カテゴリ: C#:)

DataGridViewにテキストを表示させているとき、Ctrl-C,VでデータをExcelへコピー&ペーストさせたい場合があります。 通常であれば特にプログラムを書かなくてもコピペは可能なのですが、コピー元となるDataGridViewのセル値に改行が含まれる場合は上手くいきません。 例えば、以下のようなデータがあった場合、Excelへコピペをすると… Excel上では、下記のようにコピー元にあった改行文字の単位で別のセルに値が入ってしまいます。 このような場合は、下記の対処方法をとると解決できます。 ※余談ですが、DataGridViewのセル内で改行を許可するには、下記のよう…


続きを読む

Xamarin Studioを使いたい人が、最初に読むべきチュートリアル資料

2016年5月22日 (カテゴリ: C#:)

新しい開発環境を試してみたい場合、簡単なチュートリアルを参考にしながら、試しに1本プログラムを作ってみると、手の動かし方など基本的な部分を理解するのに役立ちます。 先日、Xamarin Studioを評価してみたですが、下記のサンプルプログラムがわかりやすかったため、メモしておきます。 Xamarin Studioの参考ページ一覧 Xamarin Studioを最初にセットアップする方法 https://github.com/ytabuchi/XamarinHOL/blob/master/XamarinHandsOn_Prepare_JXUG.pdf ハンズオンのドキュメント https://…


続きを読む

[Xamarin] *.xaml.csに書いたInitializeComponent()メソッドでエラーが出る場合

2016年5月22日 (カテゴリ: C#:)

Xamarinでプログラムを作成しているとき、InitializeComponentメソッドを呼び出している箇所で、メソッドが見つからないという意味の赤い波線が表示される場合があります。 具体的には、以下のようなコードです。 public partial class MainPage :ContentPage {   public MainPage() { InitializeComponent(); } … } このような場合の対処法は、下記のとおりです。 1.Mainpage.xampを開く。 2.適当な…


続きを読む

cURLで、エラー”Initializing NSS with certpath: none”出る理由を、ソースから調べてみた

2016年5月6日 (カテゴリ: PHP:)

Linux上で実行するPHPのスクリプト内で、curlを使用したプログラムを書いていたのですが、テスト中に下記のエラーが出力されました。 Initializing NSS with certpath: none Unable to initialize NSS メッセージ通りcertファイルがあるPATHがわからないせいで、初期化に失敗したのだろうとは思っていたのですが、このエラーが具体的にどの条件で出力されるか気になったので、curlのソースを確認してみました。 該当のメッセージでgrepしてみると、エラー出力をしているのは”curl/lib/nss.c”でした。関数…


続きを読む

[Google APIs Client Libraries]認証処理でOAuth2 access tokenの保存エラーが出たときの対処法

2016年5月5日 (カテゴリ: PHP:)

Google APIs Client Librariesを使用して、Googleのサーバへ対してOAuth2認証を行う際、SDKは認証のアクセストークンを/tmpフォルダに保存しようとします。 レンタルサーバなどで/tmpフォルダに権限がない場合、トークンの保存処理でエラーになってしまいます。 cURL Problem with the SSL CA cert (path? access rights?) このような場合は、下記の処理でトークンの保存先を変更できます。 $config = new \Google_Config(); $config->setClassCon…


続きを読む

[GoogleAnalytics API]Googleサーバへの接続タイムアウトを指定するには

2016年5月4日 (カテゴリ: PHP:)

Google Client APIを使用して認証を行う際、google提供のSDK内ではGoogle_IO_Curlというクラスを利用しています。 この中で、接続タイムアウト時間を変更するには、下記のコードでオプションを指定します。 接続するまでのタイムアウトを指定する場合 $client = new \Google_Client(); $client->setClassConfig(’Google_IO_Curl’, ‘options’, array(CURLOPT_CONNECTTIMEOUT=>10)); 応答データが返ってくる…


続きを読む

[FuelPHP]task作成時、指定可能なクラス名・ファイル名の組み合わせとは?

2016年5月4日 (カテゴリ: PHP:)

FuelPHPでtaskを作ったとき、実行が可能なファイル名とクラス名の組合わせです。 良く忘れるので忘備録代わりに置いておきます。 特に大文字小文字と、アンダーバーの組み合わせで、何がOKなのかよく忘れてしまいます… まずは、テスト結果から。 クラス名 ファイル名 コマンド 実行 説明 Test test.php php oil refine test OK これが基本形 Test test.php php oil refine Test OK コマンドは大文字小文字関係ない Test test.php php oil refine tESt OK コマンドは大文字小文字関係ない…


続きを読む

[GoogleAnalytics API]エラー:(403) User does not have any Google Analytics account. が出るときの対処法

2016年5月3日 (カテゴリ: PHP:)

GoogleAnalytics APIを使用したプログラムで、APIをコールすると、”User does not have any Google Analytics account”エラーが出る場合があります。 data PHP Fatal error: Uncaught exception ‘Google_Service_Exception’ with message ‘Error calling GET https://www.googleapis.com/analytics/v3/management/accounts: (403) User does not h…


続きを読む