AngulerJSの1.2を使って、もっともシンプルなコード(JavaScriptの変数に入った値"hello world"をHtmlに出力するだけの処理)を作ってみます。
## 確認した環境
AngulerJS 1.2.32
ブラウザ: Chrome
## プログラム
```language-html
...
PHPのデプロイメントツールであるDeployerを使用すると、下記のように「To speed up composer installation setup "unzip" command with PHP zip extension https://goo.gl/sxzFcD」エラーが出る場合があります。
```language-bash
$ dep deploy
De...
PHPのdeployerでは、デプロイメントに失敗すると排他制御のロックがかかったままになってしまい、次回実行する時には`dep deploy:unlock`コマンドを手作業で実行する必要があります。
本番運用中はこれで良いのですが、デプロイメントのセットアップ中...
PHPのdeployerでは、deploy.phpの中で以下のようにallow_anonymous_statsをtrueにしておくことで、deployerの作者にツールの使用統計情報を送信する事ができます。
```language-php
set('allow_anonymous_stats', true);
```
この値をtrueにした時、具...
## エラーの内容
deployerでデプロイしようとすると「Failed to execute git clone」のエラーが出る
```language-bash
[root@localhost deployer_test]# php deployer.phar deploy
✈︎ Deploying 1.7/master on localhost
✔ Executing...
PHPのデプロイメントツールDeployerを実行すると下記のエラーが出る事があります。
```language-bash
$ dep deploy
Deploy locked.
Execute "dep deploy:unlock " to unlock.
```
## 原因
Deployerはデプロイメントを実行時に多重実行されな...
## 事象
PHPのデプロイメントツールであるDeployerを実行したところ、にエラー「Call to undefined function Deployer\Utility\posix_setsid()」が発生し、デプロイが行えなかった。
## プログラム
エラーが出る最小のプログラム(deploy.php)は以...
## 事象
PHPのComposerを実行時に、エラー「sh: git: command not found」が発生した。
```language-bash
[vagrant@localhost www]$ composer create-project fuel/fuel blog
Installing fuel/fuel (1.8.0.1)
Failed to download fuel/fuel f...
## 発生したエラー
composer create-projectを行ったら、以下のように`Could not delete ./`のRuntimeExceptionが発生する。
```language-bash
$ composer create-project fuel/fuel . -vvv
...
Executing command (CWD): git clone --no-checkou...
## オプションなしでgoコマンドを実行
プログラムgoをオプションなしで実行すると、コマンドの一覧が表示される
```language-bash
$ go
Go is a tool for managing Go source code.
Usage:
go command [arguments]
The commands ...
PHPやPerlなどの言語では正規表現検索次に、大文字小文字を無視するiスイッチというものがあり`/expression/i`のような形で、指定することができます。
Goで同じことを行う場合、正規表現の先頭に`(?i)`と記載します。
## プログラム
```language...
Go言語で、Unixの`cat -n`コマンドのように、標準入力より入力されたテキストに行番号をつけるプログラムです。
ファイルから1行づつテキストを読み込むにはbufio.NewScanner()を使うと便利です。また、標準入出力はio.Stdin, io.Stdout, io.Stderrを...
Go言語でPHPのstr_repeat()関数相当の処理を行うには、strings.Repeat()メソッドを使用します。
## プログラム(Go言語)
プログラム
```language-go
package main
import (
"fmt"
"strings"
)
func main() {
// PHPのstr_repeat()相...
go言語でPHPのimplode/explode相当の処理を行痛い場合は、stringsパッケージのJoin()、Sprit()メソッドを使用します。
## プログラム
```language-go
// test01.go
package main
import (
"fmt"
"strings"
)
func main() {
// PHPのimp...
Go言語でプログラムをコンパイルしたとき、下記のエラーが出ることがあります。
```language-bash
go build test.go
syntax error: non-declaration statement outside function body
```
このエラーは、ファイル内にpackage定義を複数回行ったとき...
この記事では、PHPのフレームワークであるLaravelで、MVCのコントローラーについての基本を説明します。
## コントローラの作成
Laravelでは、artisanの`make:controller`コマンドで、MVCのコントローラーに相当するクラスのひな型を作ることがで...
この記事では、PHPのフレームワークであるLaravelのルーティングの基本について説明します。
## インストール直後のルーティング
Laravelプロジェクトを作成した直後に`php artisan serve`コマンドを実行し、ブラウザからhttp://localhost:8000/へ...
PHPのパッケージマネージャであるcoposerでは、`composer global require`コマンドを使用することで、パッケージをシステム全体の物としてインストールできます。
```language-bash
> composer global require laravel/installer
Changed current dir...
PHPフレームワークのLaravelで、使用しているフレームワークのバージョンを確認するには、atrisanコマンドで"-V"オプションを指定すればよいです。
```language-php
$ php artisan -V
Laravel Framework 5.6.4
```
Laravelのプログラムを実行すると、下記のエラーが出ることが有ります。
```language-php
RuntimeException
No application encryption key has been specified.
```
これはエラーメッセージ通り、Laravelプロジェクトに暗号化キーが未設定のため...
Laravelのcomposer.jsonを見ていたら見つけたのでメモ。
以下のワンライナーPHPスクリプトで、.envというファイルが無かったら、ファイル".env.example"を.envにコピーすることができます。
```language-php
php -r "file_exists('.env') || copy('...
PHPフレームワークのLaravelをWindows環境で使っていて、php artisan serveコマンドを実行すると下記のエラーが出て起動できなかったので、確認&対処した結果を書いておきます。
## 出力されたエラー
`php artisan serve`コマンドで起動させようと...
PHPのフレームワークであるSlim Frameworkで、ブラウザからcsv/tsvなどのファイルをダウンロードする方法です。
```language-php
$app->get('/tsv_test', function (Request $request, Response $response, array $args) {
// TSVデータを作成す...
PHPのパッケージ管理はComposerの登場によって劇的に改善されましたが、Composerは依存関係を解決するのに非常に時間がかかり、パッケージインストール時にパフォーマンスの問題を引き起こすことが有ります。
Composerの性能向上に関するTIpsがhax0r(...
先ほど、ふとファイル内に"<?PHP"だけの文字列だけを含むphpスクリプトを実行してみた。
すると、スクリプトの出力に"<?PHP"という文字自体が出力されたので、気になって調べてみた。
(本記事は、諸事情によって"<?PHP"を全角で書いて...
Quizletで管理されている単語帳をExcelに出力したかったため、PHPのGoutteパッケージを使用してtsv形式に変換するスクリプトを作成しました。
※PHPでGoutteパッケージの使い方自体は、[こちらの記事](https://akamist.com/blog/archives/1700)を参考に...
今回は、PHPのスクレイピングライブラリであるGoutteを使用して、指定したURLに対するWebページのタイトルを取得してみます。
## Goutteパッケージのインストール
Goutteパッケージはcoposerのfabpot/goutteパッケージとして提供されています。
c...
Linuxでは、以下のように";"でコマンドをつなぐことで、複数のコマンドを1行で実行させることができます。
```language-bash
pushd /path/to; php foo.php; popd
```
Windowsのコマンドプロンプト(cmd.exe)で同じことを行いたい場合はどうすればよい...
PHPでComposerを使用した外部パッケージ管理を行っているとき、`composer update`コマンドを使用することで、パッケージのバージョンアップをまとめて行うことができます。
ですが、テストの都合などで全てのパッケージを一度に最新にせず、特定パッケ...
最近のPHPプロジェクトでは、外部ライブラリを管理するのにComposerを利用することが多いです。
Composerを利用とバージョンや依存関係の自動解決などを自動に行ってくれるため非常に便利ですが、Composerではパッケージを自由に登録できるため、予期せ...
Qiitaにある下記の記事で、dl,dt,ddを使った定義リストを表形式にする方法が紹介されています
- Qiita:複雑な(説明|定義)リストdl,dt,ddの見た目を表のようにするCSS
ですが、css gridの`display: grid`定義を利用することで、紹介されているモノ...
C#でタスクトレイアプリを作る時、右クリックメニューはNotifyIconを用意したうえで、ContextMenuStripを使ってメニューを作ります。
ですが使い勝手を考えた場合に、このメニューを**左クリック時も表示させたい**場合があります。
このような場合...
C#でForm上に配置したTextBoxから最後の10行、もしくは、最初の10行のみを取得するコードです。Linqを使用しているので、"using System.Linq;"の定義が必要です。
## TextBoxから最後の10行のみを取得する
```language-csharp
using System.Linq;
...
WindowsでC#のプログラムから、別のプログラムを実行する場合、Process.Start()メソッドを利用することが多いです。
Process.Start()はasync/awaitによる非同期処理に対応しておらず、プログラム全体を非同期ベースで作成しているとき、外部プロセス呼...
C#のプログラムでasyncが付いたメソッドを作って呼び出したとき、**CS4008 'void'を待機することができません**のエラーが出ることがあります。
```language-csharp
private async void button1_Click( object sender, EventArgs e )
{
await He...
C#のプログラムでシンプルなkey-value情報を保存するために、iniファイルsaver/loaderが必要だったため作成しました。
## 使い方
以下のように、Save/Loadメソッドで読み書きをします。データのやり取りはDictionaryで行います。
```language-cshar...
C#のAngleSharpパッケージで、JavaScriptを含むページを処理したいときに、JavaScriptの実行を有効化させる方法を説明します。
## nugetパッケージの登録
今回説明するサンプルコードを実行するためには、AngleSharpパッケージに加えて、AngleSharp.Sc...
C#のスクレイピングライブラリであるAngleSharpを使っていて、以下のようなidもclassも指定されていないformのinput要素に値をセットしたいときがあります。
```language-html
```
このような場合は、inputタグをすべて列挙...
C#のスクレイピングライブラリであるAngleSharpを使って、htmlのformに値を入力し、submitを行ったうえで遷移後ページの内容を取得してみます。
formの制御やページ遷移が行えると、ログイン認証があるサイトなどで、認証情報を入力したうえでログイン...
C#でLinqを使ったプログラムを作成していると、下記のエラーが発生することがあります。
```language-bash
エラー CS0266 型 'System.Collections.Generic.IEnumerable' を
'System.Linq.Enumerable' に暗黙的に変換できません。
明示的な変換が存...
VisualStudio+WinFormの環境で、AngleSharpパッケージを利用したWebページのスクレイピングを行ってみます。
## AngleSharpを使えるようにする
AngleSharpは、NuGetパッケージとして提供されているので、パッケージのインストールで導入することがで...
C#で非同期処理を行うための機能であるasync/awaitのふるまいに関する説明です。
サンプルコードを見ながら確認していきます。
## 処理に時間が掛かるメソッドHeavyFunction()を準備する
まず、処理に時間がかかるメソッドを用意します。この例で...
LaravelでORマッパーとして、Eloquentを使用ている場合、タイムゾーンを変更するには、config/app.phpのtimezoneを'UTC'から'Asia/Tokyo'に変更すれば、DBに登録される時刻がJSTになります。
ですが、Laravelを使わずに、Composerを使ってilluminate/da...
PHPのフレームワークLaravelに付属のEloquentでは、デフォルトでデータの登録・更新時刻をそれぞれ、created_at, updated_at列で管理してくれます。
通常はこれで問題ないのですが、履歴テーブルのようにデータの登録だけが行われ、更新されない事が事...
PHPのフレームワークであるLaravelでは、DBアクセスを行うのにEloquentやQueryBuilderという便利なモジュールがあります。
ですが、プロジェクトによってはLaravel以外のマイクロフレームワークや、フレームワークなしの環境だけども、ORマッパーのEloq...
Illuminate/DatabaseパッケージのgetQueryLog()は、実行されたSQLとパラメータに加えて、処理時間をtimeのキーで取得できます。手元の環境で1~2ぐらいの値が帰ってくるので絶対ミリ秒単位だろうと思ったのですが、気になったので調べました。
結果を先...
PHPのフレームワークLaravelで、フレームワークのインストールから、DBの設定とcliでのDB操作まで行ってみます。
今回、接続先のDBはVagrant上に構築したMySQLを利用しています。
VagrantでのMySQLデータベース作成は、下記の記事を参考にすると`v...
PHPのORマッパーであるEloquentでは、データの登録時刻・更新時刻と、データの論理削除(SoftDelete)を行うときの削除時刻を自動で更新してくれる便利な機能があります。
今回は、これらの機能を最小の手間で(=Eloquentのデフォルト設定で)利用するため...
Laravel5.5で`php artisan migrate`した時に下記のエラーが発生することがあります。
```language-bash
$ php artisan migrate
[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key wa...
PHPのSlim3フレームワークでslim/twig-viewパッケージを使用時、*.twigのビューファイルを変更してもブラウザで表示したときに変更内容が反映されないときがあります。これは、twigがビューのファイルを*.phpに変換した結果をキャッシュしており、元の*.tw...
PHPのパッケージマネージャであるcomposerでdump-autoloadコマンドを実行したとき、以下のように「A non-empty PSR-4 prefix must end with a namespace separator」エラーが出る場合があります
```language-php
$ composer dump-autoload
Generating...
PHPのSlim3フレームワークで、slim/twig-viewパッケージを使用時に、*.twigファイルで`{{ dump(value)}}`のようにdump関数を使おうとすると、下記のエラーになる場合があります。
```language-bash
Type: Twig_Error_Syntax
Message: Unknown "dump" fu...
phpでは、php.iniファイルの中でextensionを指定することができます。
exetensionで指定されたモジュールのバージョンを確認するには、--riオプションを使用すると便利です。
```language-bash
$php --ri memcached | grep Version
Version => 3.0.1
...
PHPでルーティングを行うパッケージであるnikic/FastRouteパッケージを利用して、controller-actionスタイルのルーティングを行う方法を説明します。
nikic/FastRouteパッケージは、PHP本体の開発者であるNikitaさんが開発していて、Slim3 Framework...
PHPのマイクロフレームワークであるSlim Frameworkのバージョン3.9.0が、2017/11/04にリリースされました。バージョン3.9.0での変更点は主に不具合修正で、以下のような修正が行われています。
- Requestオブジェクトに任意のHTTPメソッド名を使用でき...
PHPのviewテンプレートであるTwigを使おうとしたとき、以下のエラーが出ることがあります。
```language-php
Argument 1 passed to Twig_Filter::__construct() must be an instance of string, string given,
called in /path/to/vendor/twig/twig/...
PHPでSlim3フレームワークを使ったプロジェクトを作る場合、プロジェクト構成のひな型としてslim/slim-skeletonパッケージがあります。今回は、プロジェクトひな型として、slim-skeletonが役立つか評価したい人のため、プロジェクトを構成している全ファイ...
この記事では、PHPでHttp通信を行うためのコンポーネントである、Guzzleを使うための手順を説明します。PHPに慣れていない人のために、PHPのパッケージマネージャであるcomposerのインストールから説明しています。
### 確認環境環境のインストール
今...
Vagrantを使って、CentOS7.3+PHP7.1環境を、素早くコマンド1つで構築する為の手順です。
## 手順
1. vagrantをインストールする
2. 下記の内容のファイルを"Vagrantfile"の名前で作る
```language-ruby
Vagrant.configure("2") do |config|...
http://inet-ip.info/というサイトでは、特定のURLに対してHTTPリクエストを投げることで自分のPCのグローバルIPを取得することができます。
Linuxからcurlコマンドで確認する場合は以下のようにな形になります。
```language-bash
# curl http://ine...
投稿ナビゲーション