tohokuaikiのチラシの裏

技術的ネタとか。

Confluenceのプラグイン開発を承ります。ご連絡はこちらのホームページからお願いいたします。

今更ながらPHP7でローカルにPEARを入れた話

今どきPEARって…という感じですが、HTTP_Request2とか意外と使い慣れてるので便利なんですよ。いい加減ComposerでGuzzle使ってくれって話なのですが、ことによってはHTTP_Requestの方がちょろっとPHPのCLIでスクリプト書く分には楽ですよね。と。 インストー…

「生きがい」という言葉は日本語だけに存在する?

この記事でwithnews.jp 「以前、テレビの取材を受けた時、ちょっと意地悪な気持ちになって『生きがいって言葉は外国にはないし、言いませんよね。生きがいがなくても人間、ハッピーに生きていけるんじゃないですか』って答えたんです」 ってあって、Google翻…

今更だけど、EthnaをPHP7にしてmysqliに対応した時のメモ

昔のコードのメンテナンスです(とか言ってみる いい加減PHPも7になってEthnaはねーんじゃないの?って感じなのですが、これがまた意外と動くので使い続けたりしています。 ただ、preg_replaceのe修正子とmysql*系の関数が無くなったのでmysqli*に対応しない…

またdebianのvsftpdでハマったのでメモ

環境 uname -a Linux www 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u2 (2017-06-26) x86_64 GNU/Linux いつものように、chrootしてバーチャルユーザーでのログイン。 症状1. vsftpでつなごうとするとConnection Refusedされる。 ローカルからFTPコマンドで…

PHPでeBayのAPIを使う

結論から言うと、APIのReferenceがあるけどそんなのは見なくてPHPのSDKがあるからそれを使ったらすぐだった。 とにかく、SandboxとProductionの両方を行き来するのでどっちがどっちかわからなくなるし、いつの間にかアカウントできてたのでこの2つがリンクす…

Confluenceのアドオンで別のアドオンのComponentを使う場合の注意

結論から言うと、その別のアドオンを事前にインストールしてないとインストールに失敗しますよということ。 お互いのComponentを循環参照するようなアドオンは作れないってことですね。 こんな簡単なことに気づかずにはまりました。 IDE上ではpom.xmlに <dependency> <groupId>jp.</groupid></dependency>…

Mediaqueriesの覚え方

css

いつもこんがらがるので・・・。 min-width @media only screen and (min-width: 800px) { 「ブラウザが」800px幅が最低でも必要です => 800px以上のブラウザ幅で有効になります。 max-width @media only screen and (max-width: 800px) { 「ブラウザが」800…

PHPで自分のクラスを見たSingletonの生成

php

今更って感じですが。

ORMとしてActiveObjectsを使用する

Atlassianのデータを保存する場所といえば、BandanaでありContentPropertyManagerである。 tohokuaiki.hateblo.jp が、JIRA4.4からConfluence4.3からは特に意識しなくてもActiveObjectsが使えるようになった。こちらの方が早くて軽くて大容量でそのプラグイ…

Laravel5.4でAdminLTEを使う

AdminLTEという管理画面のテンプレートがある。これをLaravelで使いたい。 composerで簡単に使えるようにならないものか と思って、packagistでLaravel adminlteで検索した。 ダウンロード数と☆数を見て・・・・と考えてるとインストーラ形式のこのパッケージが…

Laravel5.4でAuthをつけたときにMySQLのmigrationでエラー

artisan migrateするとエラー。 specified key was too long max key length is 767 bytes 原因はだいたいここら辺で。 qiita.com で、対策としてあげられている2つ 使用するcharasetをutf8mb4から変更する は、app/Providers/AppServiceProvider.php を

pom.xmlで依存性jarをローカルに置く方法

pom.xmlに依存性のあるjarを設置する ${basedir}はpom.xmlのある位置なので、以下の記述をdependenciesに設置する <dependency> <groupId>jp.co.example.confluence.plugins</groupId> <artifactId>example</artifactId> <version>1.00.01</version> <scope>system</scope> <type>jar</type> <systemPath>${basedir}\example-1.00.01.jar</systemPath> </dependency>

ホンダS660の販売台数推移

データは一般社団法人 全国軽自動車協会連合会 - 統計から 年月 販売台数 2015年3月 19 2015年4月 1411 2015年5月 807 2015年6月 1095 2015年7月 1155 2015年8月 858 2015年9月 1144 2015年10月 1019 2015年11月 949 2015年12月 839 2016年1月 993 2016年2月…

CentOS6で起動時にfsckが走って起動できない

ファイルシステムにエラーが出て起動しない。 起動中にfsckが走って、最後に unexpected inconsistency run fsck manually って出てダメになってしまう。 シングルユーザーモードで入ってルートマウントを解除して手動でfsckを掛けろということらしい。その…

Magento2.1をComposerを使ってインストールする

普通にZIP持ってきてインストールする方法はこちらなのですが、せっかくなのでComposer使ってやってみましょう。アップデートとかあった際にupdateコマンド一発で何とかしてくれそうですしね。 magento.flatz.jp 環境設定 普通に、Ubuntu16.04を使ってインス…

JavaScriptのEvent Listener付与時に即時実行する方法

どっちがいいんだろう? $=jQuery; // 1 $('#f').on('click x', function(e){ alert('do'); })).trigger('x'); // 2 $('#f').on('click', (function(){ var f = function(){ alert('do'); }; f.call(); return f; }); なんかほかにもあったような気がする。

Smartyを使ったPHPアプリケーションをgettextで国際化する

php

普通にpoeditとgettextで行けるでしょ、って思ったらそうでもなかったということで。 potファイルの作成 gettextは、「ソースコード」→「.potファイル」→「.poファイル」→「.moファイル」となり最終的には.moファイルを使う。 .potファイルができれば.moファ…

PHPのsetlocaleまとめ

php

前2つのエントリでハマりまくったPHPのsetlocaleのまとめ。*1 Apache CLIの共通の認識 $locale -a を行って表示されないロケールは(つまりOSで有効化されてないロケール)setlocale()しても無効である。 ただし、言語パック(debianだとtask-japaneseパッケー…

PHPのsetlocaleをCLIでチェックばかりしてたらハマった話。

php

まとめ setlocale()の挙動について調べている際に、ApacheからではなくCLIから調べていた。 このCLIの場合の調査は下記の通り。 CLIからPHPを実行してsetlocaleする際は、OSのロケールに依存する。 OSの/etc/locale.genで有効にしてないロケールは、setlocal…

PHPでgettextする際の注意事項というか、setlocaleの罠

php

PHPでgettextを使って国際化しようとかいうとだいたいこういう記事がヒットする。

jQuery-UI のautocompleteで候補が出てくるメッセージがうっとうしいので出さなくしたい。

なんかjQuery-UIのautocomplete使うとこんなメッセージ出るんですよね。 ヘルパメッセージらしいのだけど、面倒なので出したくない。 autocompleteの際のオプションで、 messages: { noResults: '', results: function() {} }, focus: function (event, ui) …

MySQLのForeignキー指定時の自動命名則

今更だけど、MySQLのForeignキーの自動命名則。 たとえば、こんなテーブルを作った時。 CREATE TABLE `author_author_type` ( `id` int (10) unsigned NOT NULL AUTO_INCREMENT, `author_id` int (10) unsigned NOT NULL, `author_type_id` int (10) unsigne…

Atlassian JIRAとConfluenceのバージョン情報が分かるRSSを作った

ConfluenceとJIRAがいつの間にかバージョンアップしてるので、把握できるようなRSSを配信できるスクリプト組んだ。 httpが面倒だったのでwget前提。 以下の3つのファイルを置いて atlassian-products-jira.php atlassian-products-confluence.php 二アクセス…

LaravelのメソッドのTypeHintがどうやってパラメータをうまい具合にセットしているのか?

Routingクロージャや、Controllerメソッドで

Laravel リファレンス 4-1 認証

さて、だいたい慣れてきた。折角なのでここからは与えられたサンプルコードを使わずに一から作っていこうと思う。 もちろんサンプルコードは参考にする。 とりあえず、プロジェクトの開始 すっかり忘れてしまったのだけど、.bashrcに export COMPOSER_HOME=~…

Laravel5でDBのQueryログを出すEvent Listenerを作る

app/(Handlers/)Events/QueryLogTracker.php 雛形は、 $ ./artisan make:event QueryLogTracker で作る。

「Laravelリファレンス」3 データベース

マイグレーション つらつらっと読んで気になったところだけメモ artisanのmake:migrationコマンドで作るClass名の重複に注意 コマンド引数の実行内容(下記の場合はcreate_authors_table)は同じものが被るとClass名として被ってしまい、Fatalになるので気を…

「Laravelリファレンス」 2-3 基本コンポーネント

環境設定 .envファイル このファイルは、.gitignoreに含める。 APP_ENVで本番環境(production)、ユニットテスト環境(testing)、それ以外の開発環境(任意)を設定できる。 値は、env()ヘルパ関数で取得できる。配列は設定できない。 config/*.phpファイル アプ…

LaravelのClassのオートロードを読んでみて、Facadeがどうやって短い名前でCallされているかを考える

本丸まで とりあえず、読み込み順としては public/index.php bootstrap/autoload.php vendor/autoload.php composer/autoload_real.php vendor/composer/ClassLoader.php vendor/composer/autoload_classmap.php とくる。 Composer\Autoload\ClassLoaderで実…

LaravelのFacadeがどうやってメソッドを決定しているかコード読んだのでメモ

例えばAuthの場合。 Auth::guest()のメソッドはどのインスタンスが作られるのか? Authクラスは直接的には、Illuminate/Support/Facades/Auth.php のStaticメソッドがコールされる。 Authクラスは、getFacadeAccessor() return 'auth'; のみだが、このauthは…