2017年10月24日火曜日

Composer updateで「PHP Fatal error: Allowed memory size of xxxx bytes exhausted」の対処法

方法は以下の2つがあります。
  1. もしcomposer.lockも一緒にコミットされていたら、vendorを”まるごと”再度「composer install」で解消できます。具体的な操作手順は以下の通りです。

    # vendorをバックアップをとっておくと安心
    mv vendor vendor_bk
    composer install
    composer info 或いは composer show でインストール済みの全パッケージの情報を確認

    ※ ここ一つ大きな制限事項があります。他の誰か既にcomposer update済み、かつcomposer.lockが最新の状態であることが前提としています。
  2. 一時的にメモリのサイズを指定してアップデータを実行します。具体的な操作手順は次の通りです。

    # まずcomposerコマンドのパスを表示
    which composer
    # 以下のような結果が出ると思います。
    /usr/local/bin/composer
    # メモリサイズを設定してアップデータを実行
    php -d memory_limit=-1 /usr/local/bin/composer --no-dev update バッケージ名

2017年10月17日火曜日

Jqueryでiframe内部の要素を選択する方法

jqueryの他の要素の取得と違って、iframeの中の要素を取得するには、まずiframeのcontentsを取得しないといけません。

例:名前は「frame-test」のiframeの中のcss「item-menue」 を選択するには、

$('iframe[name=frame-test]').contents().find('.item-menue');

2017年10月12日木曜日

php stdClassのインスタンスを生成すると同時に属性を設定する方法

例:以下2つの動作を一つにするには、

$obj = new \stdClass();
$obj->attr = 'testKey';

以下の書き方で一つに纏められます。↓

$obj = (object) array(
    'attr'=>'testKey'
);