2018-05-01から1ヶ月間の記事一覧

Perl:DateTime

use DateTime; my $time = DateTime->now(); $time->set_time_zone('Asia/Tokyo'); my $today = $time->strftime('%Y%m%d'); my $now = $time->strftime('%H:%M');

Perl:WWW::Mechanize::Timedをインストールする

めっちゃハマりました。 以下のスクリプトを実行してください: #!/usr/bin/perl use strict; use warnings; use CPAN; CPAN::Shell->install( "Tree::DAG_Node", "Test::Warn", "WWW::RobotRules", "HTTP::Cookies", "Net::FTP", "Net::HTTP", "Digest::bas…

CentOS7:時刻を変更する

テストのために時刻を変更することってあると思います。 以下、やり方です。まず、ntpを無効にします: timedatectl set-ntp 0 そして時刻を変更します timedatectl set-time '2018-05-21 23:00:01' 終わったらntpを復活させ: timedatectl set-ntp 1 chrony…

CakePHP3:ログイン後、管理者の場合は別ページにリダイレクトする

これ、Authの設定でやる方法をご存知の方がいましたら教えてください… 私はUsersController.phpのloginで次のようにしています: if ($this->request->is('post')) { $user = $this->Auth->identify(); if ($user) { if($user['user_status_id'] == USER_STA…

CakePHP3:ブラウザの言語設定におうじてロケールを切り替える

まず、AppController.phpに次を追加します: use Cake\I18n\Middleware\LocaleSelectorMiddleware; public function middleware($middleware) { $middleware->add(new LocaleSelectorMiddleware(['en_US', 'ja_JP'])); } 次にbootstrap.phpにこちらを: use …

CakePHP3:debugKitが表示されない…

開発環境をEC2に移したところ、debugKitが表示されないという怪現象が。 debug.logをみたところ: 2018-05-14 13:46:16 Warning: DebugKit is disabling itself as your host `ホスト名` is not in the known safe list of top-level-domains (localhost,dev…

CakePHP3:tinyintとsmallintのマイグレーションファイル

bakeコマンドでマイグレーションファイルを作成すると、次のような内容が生成されます: $this->table('statuses') ->addColumn('id', 'tinyinteger', [ 'default' => null, 'limit' => 3, 'null' => false, ]) ->addPrimaryKey(['id']) ->addColumn('name',…

CakePHP3:QRコードを表示する

今回は、こちらを利用しました: github.com PHP7.03以上とGDが必要です。 インストール composer require chillerlan/php-qrcode 僕の場合はこれで2.0.6が入りました GDのインストール iusを使っているので、以下でインストール: sudo yum install php72u-…

PHP:7.0から7.2に上げる

php

これまでPHP7.0を使っていたのですが、QRコードのライブラリが7.03以上のため、7.2にあげることにしました。 iusを使っていたので、次のようにしました: PHP7.0の削除 yum remove php70* PHP7.2のインストール yum -y install php72u php72u-devel php72u-m…

CakePHP3:レコードの存在をチェックする

これまでは、find()を使っていたのですが、もっと簡単な方法が! if ( $this->Users->exists(['email' => $email]) ){ } といった具合にチェックできます。

CakePHP3:画面が真っ白

VirtualBoxで仮想マシンを幾つか立ち上げてプログラムを書いていたところ、画面が真っ白であったり、 ERR_CONTENT_LENGTH_MISMATCHであったりのエラーが。 どうやらメモリ不足のようで、パソコンを再起動+仮想マシンの数を絞ったら治りました。

PHP:呼び出したいメソッドが変数に入っている場合

php

仮に、 $titleJa = $event->japanese[0]->title; $titleEn = $event->english[0]->title; $descJa = $event->japanese[0]->description; といったことを関数にまとめたいとします: $titleJa = getData($event, 'japanese', 'title); $titleEn = getData($ev…

Bootstrap:フォームにおいて、入力項目の代わりにテキストを表示する

ここを参照: bootstrap3.cyberlab.info

WordPress:開発用のサーバを作る

WordPressのサイトを立ち上げて、後日、そのサイトのコピーが欲しいとします。 僕はこうしました: 本番側の作業 データベースのバックアップ mysqldump -u root -p wordpress_production > /tmp/production.dmp ソースのコピー (gitに全部入れているので割…

CakePHP3:フルパスのURLを生成する

結論からいうと、URLヘルパーもしくはRouterの第2引数をtrueに設定します: URLヘルパーの場合: $url = $this->Url->build(["controller" => "Posts", "action" => "search", "?" => ["foo" => "bar"] ],true); ルータの場合: use Cake\Routing\Router; //…