php

MacでXAMPP

/Applications/XAMPP/etc/httpd.conf /Applications/XAMPP/etc/extra/httpd-vhosts.conf /Applications/XAMPP/etc/php.ini 辺りを弄っていけばそれっぽい環境になるんじゃないか XAMPPの文字化けをphp.iniの設定で直す方法【初心者向け】 | TechAcademyマガ…

Laravel Debugbarの使い方

barryvdh/laravel-debugbar: Laravel Debugbar (Integrates PHP Debug Bar) Debugbar::info($object); Debugbar::startMeasure('render','Time for rendering'); Debugbar::stopMeasure('render'); Debugbar::addMeasure('now', LARAVEL_START, microtime(tr…

Address in mailbox given [] does not comply with RFC 2822, 3.6.2.

Laravelでメール送信しようとしたらタイトルのエラーが発生。 宛先に''があったことが原因。 文字列を宛先にすると、その文字列をメールアドレスとして扱い、 そのアドレスに送信しようと試みる。 なので、空配列[]にしたら直った。

PHPのandとorの間違った使い方

php

php artisan tinkerにて >>> $t = true; >>> $f = false; >>> $res = $t and $f; return $res; => true /** false かと思ってた。*/ >>> $res = $f and $t; return $res; => false >>> $res = $t or $f; return $res; => true >>> $res = $f or $t; return $…

Trait 'Hoge' not found

なんとなくtrait使ってみたら、 Trait 'Hoge' not found とかなってしまった。 どうやら、Hoge.phpでnamespaceを設定していなかったことが原因の模様。 このあたりは、IDEに任せっきりだったからちゃんと勉強せねば。

PHPの関数の引数のアンド

php

関数の引数にアンド(アンパサンド、&)をつけると、参照渡しとなる。 function inc($int) { $int++; } $one = 1; inc($one); echo $one; // => 1 function ninc(&$int) { $int++; } $two = 2; ninc($two); echo $two; // => 3

phpのcompact()

$a = 1; $b = 2; $array = compact('a', 'b', 'c'); print_r($array); // Array // ( // [a] => 1 // [b] => 2 // ) compact()の引数が現在のシンボルテーブルに変数として定義されていれば、その引数をkey、変数の値をvalueとする配列を返す。 この場合、c…

phpのswitch文

php

switch (true) { case ($timezone === 'UTC'): return 'UTC'; case ($timezone === 'Asia/Tokyo'): return 'JST'; default: return ''; }

phpの原始的デバッグ

var_dump($foo); exit(); exit($foo); // in laravel dd($foo); exit();

count(): Parameter must be an array or an object that implements Countable

phpで上記のようなエラーに遭遇。 php7.2以上でcount()使った場合に出るwarningとのこと。 warningの抑え方はいろいろあると思うんだけど、 PHPのエラー表示設定について 今回はxamppの古いバージョンインストールするのが正解か。

xdebug導入

ブラウザでphpinfo()を表示して、php.iniのパスを確認。 php.iniの最終行のあたり [xdebug] ;zend_extension="/Applications/MAMP/bin/php/php7.2.1/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so" を [xdebug] zend_extension="/Applications/MA…

macにlaravelインストール(composerで)

brew isntall composer composer global require "laravel/installer" cd ~/workspace/foo git init git config user.name w git config user.email w@w.com ~/.composer/vendor/laravel/installer/laravel new approot これだと最新版のlaravelがインストー…