PHP

もろもろ 文字数とか PHPでの文字列の文字数・バイト数・文字幅(見た目の長さ)の数え方 全角チェック 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <?php /** * @assert ('文字列です。') === true * @assert ('abcd1234+:;!') === false * @assert ('全角abcd') === false * @assert ('半角カナ') === false */ function is_zen_preg_match ($str) { if (!preg_match("/(?:\xEF\xBD[\xA1-\xBF]|\xEF\xBE[\x80-\x9F])|[\x20-\x7E]/", $str)) { return true; } else { return false; } } 名前でメソッドを呼ぶ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 <?php class Checker { function check_name($value) { return false; } } $profile = array( 'name' => 'my name', 'phone' => '333-3333-3333' ); $checker = new Checker(); function check($checker, $key, $value ){ $method = "check_$key"; if(method_exists($checker, $method)){ return $checker->$method($value); } return true; } foreach($profile as $key => $value ){ echo $key, ":", check($checker, $key, $value ), "\n"; } map関数 1 2 3 4 5 6 7 8 9 10 11 12 13 <?php $array = array('a' => 1, 'b' => 2, 'c' => 3); $array2 = array_map(function($val){ return $val * 2 ; }, $array); foreach($array as $k => $v ){ echo "$k .... $v\n"; } foreach($array2 as $k => $v ){ echo "$k .... $v\n"; } 1 2 3 4 5 6 7 $ php tests_map.php a .... 1 b .... 2 c .... 3 a .... 2 b .... 4 c .... 6 インスタンスクラスのstatic メンバーへのアクセス 1 2 3 $model_class = get_class($instance); $value = $model_class::$static_value; 配列要素の削除 1 unset($array[$i]); PHP docs PHP: Noticeエラーを回避してarrayから値を取得するいくつかの例 mysql -接続確認 ...

2015年8月5日 · 2 分

CentOS

$ sudo yum install graphviz-python graphviz-devel $ pip install pygraphviz

2015年8月4日 · 1 分

Mac

2017 購入 Macbook Pro 13 (A1706) シェルケース

2015年8月4日 · 1 分

Laravel - Laravel PHP Framework

laravel.jp

2015年8月3日 · 1 分

Test

Nose noseで気軽にテストを書く(+geventの場合) https://github.com/django-nose/django-nose Django でのテスト BDD Behave Lettuce Scripting Selenium

2015年8月3日 · 1 分

Geolocation

Google Maps API googlemaps/google-maps-services-python Google Geocoding API で住所から緯度経度を求める

2015年8月1日 · 1 分

PowerShell

PowerShell 実行権限 WindowsでPowerShellスクリプトの実行セキュリティポリシーを変更する PS C:\WINDOWS\system32> Get-ExecutionPolicy RemoteSigned PS C:\WINDOWS\system32> Set-ExecutionPolicy Unrestricted Set-ExecutionPolicy : Windows PowerShell により実行ポリシーは正常に更新されましたが、設定は範囲がより明確に定義されたポリシーで上書きされました。この上書きにより、シェルで現在有効な実行ポリシー RemoteSigned が保持されます。 実行ポリシーの設定を表示するには、「Get-ExecutionPolicy -List」と入力してください。詳細については、"Get-Help Set-ExecutionPolicy" を参照してください。 発生場所 行:1 文字:1 + Set-ExecutionPolicy Unrestricted + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : PermissionDenied: (:) [Set-ExecutionPolicy], SecurityException + FullyQualifiedErrorId : ExecutionPolicyOverride,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand PS C:\WINDOWS\system32> Get-ExecutionPolicy -List Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser RemoteSigned LocalMachine Unrestricted How successfully change Execution policy and enable execution of Powershell scripts ...

2015年8月1日 · 1 分

Homebrew

Muliti-Admin Sharing Administrative Rights with Homebrew 1 $ sudo dseditgroup -o edit -a hide -t user admin 1 2 $ sudo chmod -R g+w /usr/local $ sudo chmod -R g+w /Library/Caches/Homebrew

2015年7月31日 · 1 分

Packer

Packer && Box-Cutter for Windows C:\Users\hdknr>vagrant --version Vagrant 1.7.4 C:\Users\hdknr>packer --version 0.8.2 C:\Users\hdknr>ver Microsoft Windows [Version 6.3.9600] C:\Users\hdknr\Documents\work>git clone https://github.com/boxcutter/centos.git Cloning into 'centos'... remote: Counting objects: 1100, done. remote: Compressing objects: 100% (6/6), done. Rreceiving objects: 92% (1012/1100), 108.0emote: Total 1100 (delta 1), reused 0 (delta 0), pack-reused 1093 00 KiB/s Receiving objects: 100% (1100/1100), 227.44 KiB | 196.00 KiB/s, done. Resolving deltas: 100% (749/749), done. Checking connectivity... done. C:\Users\hdknr\Documents\work>cd centos C:\Users\hdknr\Documents\work\centos>vim http\ks6.cfg C:\Users\hdknr\Documents\work\centos>git diff http\ks6.cfg diff --git a/http/ks7.cfg b/http/ks7.cfg index 434a369..16797b0 100644 --- a/http/ks7.cfg +++ b/http/ks7.cfg @@ -14,11 +14,11 @@ # > linux text ks=http://<your_ip>:8000/ks.cfg # Required settings -lang en_US.UTF-8 -keyboard us +lang ja_JP.UTF-8 +keyboard jp106 rootpw vagrant authconfig --enableshadow --enablemd5 -timezone UTC +timezone Asia/Tokyo # Optional settings install C:\Users\hdknr\Documents\work\centos>packer validate centos66.json Template validated successfully. C:\Users\hdknr\Documents\work\centos>packer build -only=virtualbox-iso centos66.json virtualbox-iso output will be in this color. ==> virtualbox-iso: Downloading or copying Guest additions virtualbox-iso: Downloading or copying: file:///C:/Program%20Files/Oracle/VirtualBox/VBoxGuestAdditions.iso ==> virtualbox-iso: Downloading or copying ISO virtualbox-iso: Downloading or copying: file:///iso/CentOS-6.6-x86_64-bin-DVD1.iso virtualbox-iso: Error downloading: open iso/CentOS-6.6-x86_64-bin-DVD1.iso: The system cannot find the path specifie d. virtualbox-iso: Downloading or copying: http://mirrors.kernel.org/centos/6.6/isos/x86_64/CentOS-6.6-x86_64-bin-DVD1. iso virtualbox-iso: Download progress: 0% ... ==> virtualbox-iso: Starting HTTP server on port 8364 ==> virtualbox-iso: Creating virtual machine... ==> virtualbox-iso: Creating hard drive... ==> virtualbox-iso: Creating forwarded port mapping for SSH (host port 2262) ==> virtualbox-iso: Executing custom VBoxManage commands... virtualbox-iso: Executing: modifyvm centos66 --memory 512 virtualbox-iso: Executing: modifyvm centos66 --cpus 1 ==> virtualbox-iso: Starting the virtual machine... ==> virtualbox-iso: Waiting 10s for boot... ==> virtualbox-iso: Typing the boot command... ==> virtualbox-iso: Waiting for SSH to become available... ==> virtualbox-iso: Uploading VirtualBox version info (4.3.30) ==> virtualbox-iso: Uploading VirtualBox guest additions ISO... ==> virtualbox-iso: Provisioning with shell script: script/fix-slow-dns.sh virtualbox-iso: sudo: sudo を実行するには tty がなければいけません。すみません ==> virtualbox-iso: Unregistering and deleting virtual machine... ==> virtualbox-iso: Deleting output directory... Build 'virtualbox-iso' errored: Script exited with non-zero exit status: 1 ==> Some builds didn't complete successfully and had errors: --> virtualbox-iso: Script exited with non-zero exit status: 1 ==> Builds finished but no artifacts were created.

2015年7月31日 · 2 分

Coffee

Stand / Cafe 渋谷 千駄ヶ谷 Be a Good Neighbor 道玄坂 ABOUT LIFE COFFEE BREWERS 富ヶ谷Fuglen Tokyo 猿楽町 THE COFFEESHOP 目黒 中目黒 Onibus 日本橋 東日本橋 Mighty steps coffee stop 港区 東麻布Towers 188 六本木Be a Good Neighbor 西新橋PEACE COFFEE ROASTERS 中野 中野 Bar Zingaro 江東区 清澄 ARISE COFFEE Roastery 鹿児島 [VOILA] (http://www.inouecoffee.com/) 奥沢 ONIBUS COFFEE 富ヶ谷 ROAST WORKS THE COFFEESHOP Beans コスタリカ ラ・ロマ エチオピア ナチュラル ルワンダ ニャカブエ Resource HORIGUCHI COFFEE DISCOVERY 丸山珈琲

2015年7月30日 · 1 分