<?xml version="1.0" encoding="UTF-8"?>
<!-- <?xml-stylesheet href="/styles-rdf.css" type="text/css"?> -->
<rss version="2.0">

<channel>
<title>プログラムメモ</title>
<description>プログラムメモ 新着エントリー</description>
<link>http://logic.moo.jp/memo.php</link>
<language>ja-JP</language>
<image>
  <url>/flatmemo.gif</url>
  <title>プログラムメモ</title>
  <link>http://logic.moo.jp/memo.php</link>
  <width>92</width>
  <height>22</height>
</image>
	<lastBuildDate>Tue, 17 Apr 2018 09:56:01 +0900</lastBuildDate>
	<pubDate>Tue, 17 Apr 2018 09:56:01 +0900</pubDate>


<item>
<title>sshを自動タイムアウトしないようにする</title>
<link>http://logic.moo.jp/memo.php/archive/1208</link>
<description><![CDATA[
# ● sshを自動タイムアウトしないようにする

**~/.ssh/config** を編集します
```
vi ~/.ssh/config
```

自動応答を15秒おきに送信するようにします（ デフォルトは 0 ）
```
ServerAliveInterval 15
```


]]></description>
<pubDate>Tue, 17 Apr 2018 09:56:01 +0900</pubDate>
</item>
<item>
<title>XSERVER に phpize で pecl拡張をインストールする</title>
<link>http://logic.moo.jp/memo.php/archive/1207</link>
<description><![CDATA[
XSERVER では phpize できますので pecl拡張をインストールすることができます。

ホームディレクトリに php_source を作成してそこへインストールしたいモジュールを解凍して make します

### 例） XSERVERへ mailparse の PHP  pecl拡張をインストールする
```
cd
mkdir php_source
cd php_source
wget https://pecl.php.net/get/mailparse-3.0.2.tgz
tar zxvf mailparse-3.0.2.tgz
cd mailparse-3.0.2
phpize
./configure
make
```
make が無事完了すると **~/php_source/mailparse-3.0.2/modules/** にモジュールが作成されます。...
]]></description>
<pubDate>Mon, 16 Apr 2018 16:47:20 +0900</pubDate>
</item>
<item>
<title>テーブル TR TD の hover をある箇所だけオフにする</title>
<link>http://logic.moo.jp/memo.php/archive/1206</link>
<description><![CDATA[
テーブル TR TD の hover をある箇所だけオフにするには次のようにします。
```
&lt;td style=&quot;pointer-events: none;&quot;&gt;
    テーブルです
&lt;/td&gt;
```
]]></description>
<pubDate>Thu, 12 Apr 2018 19:15:29 +0900</pubDate>
</item>
<item>
<title>Mac版Google Chrome の自動更新をオフにする</title>
<link>http://logic.moo.jp/memo.php/archive/1205</link>
<description><![CDATA[
##・Mac版Google Chrome の自動更新をオフにするには  
ターミナルから  

```
defaults write com.google.Keystone.Agent checkInterval 0
```
とします。

##・昔の古いバージョンのGoogle Chrome をダウンロードする
http://www.slimjet.com/chrome/google-chrome-old-version.php

]]></description>
<pubDate>Thu, 12 Apr 2018 10:06:06 +0900</pubDate>
</item>
<item>
<title>Windowsサーバに open sshd をインストールして他のマシンからWindowsへssh接続できるようにする</title>
<link>http://logic.moo.jp/memo.php/archive/1204</link>
<description><![CDATA[
# ● 1. Windows用 ssh をダウンロードする
https://github.com/PowerShell/Win32-OpenSSH/releases  
（64bit版、32bit版どちらもあるのでお使いのサーバ用の zip ファイルをダウンロード）


# ● 2. 解凍して任意の場所に置く
```
c:\openssh\
```
に置きます。

# ● 3. 環境変数にパスを追加する
```
・「Windowsアイコンを右クリック」→「システム」をクリック
・「システムの詳細設定」→「環境変数」をクリック
・「システム環境変数」の 「Path」 を選択して「編集」をクリック。
・「追加」を押して「C:\openssh」を追加
```

# ● 4. sshサーバをインストール
Power Shellを起動して以下を実行します
```
cd \openssh...
]]></description>
<pubDate>Wed, 11 Apr 2018 19:57:03 +0900</pubDate>
</item>
<item>
<title>phpで日付の曜日を日本語で表記する</title>
<link>http://logic.moo.jp/memo.php/archive/1203</link>
<description><![CDATA[
# ● phpで日付の曜日を日本語で表記する
```
date_default_timezone_set(&#039;Asia/Tokyo&#039;);
$week = [&#039;日&#039;, &#039;月&#039;, &#039;火&#039;, &#039;水&#039;, &#039;木&#039;, &#039;金&#039;, &#039;土&#039;];
$dt = new DateTime();
echo $dt-&gt;format(&quot;Y/m/d&quot;). &#039; (&#039;. $week[$dt-&gt;format(&#039;w&#039;)] . &#039;) &#039; . $dt-&gt;format(&quot;H:i&quot;);
echo &quot;\n&quot;;
```
結果例
```
2018/04/11 (水) 16:02
```

]]></description>
<pubDate>Wed, 11 Apr 2018 16:04:31 +0900</pubDate>
</item>
<item>
<title>さくらのレンタルサーバでメール受信をきっかけにプログラムを起動</title>
<link>http://logic.moo.jp/memo.php/archive/1202</link>
<description><![CDATA[
# ● 1. メールアカウントを作成する（ 例: autoexec ）
さくらレンタルサーバのコンパネからメールアカウント「autoexec」を作成します。

# ● 2. .mailfilterを権限 0600 で作成する（ 例: autoexec ）
```
cd ~/MailBox/autoexec
touch .mailfilter
chmod 0600 .mailfilter
```

# ● 3. .mailfilterの中にプログラムに引き渡すコマンドを記述
**.mailfilter**
```
to &quot;| /usr/local/bin/php &lt;YOUR-PROGRAM-FULL-PATH&gt;&quot;
```

これでメール受信をきっかけにプログラムが起動します。


]]></description>
<pubDate>Tue, 10 Apr 2018 18:57:28 +0900</pubDate>
</item>
<item>
<title>Pleskで管理しているサイトのPHPにpecl拡張「mailparse」と「php-mime-mail-parser」をインストールする</title>
<link>http://logic.moo.jp/memo.php/archive/1201</link>
<description><![CDATA[
Pleskで管理しているサイトのPHPにpecl拡張「mailparse」をインストールし、WEB側、CLI側両方から使えるようにします。

# 1.  ● SSH で Pleskサーバに接続

# 2.  ● 現在のPHPのバージョンを確認
```
php -v
```
```
PHP 5.4.16 (cli) (built: Mar  7 2018 13:34:47) 
```
PHP 5.4.16 であることがわかります。これを5.6に変更します。

# 3.  ● 使用するPHPのバージョンを変更
## Pleskにインストールされている全てのPHPを表示する
```
ls /opt/plesk/php/
```
こちらの3つであることがわかります。
```
5.6  7.0  7.1
```
今回は PHP 5.6を使用します。
```
cd
vi...
]]></description>
<pubDate>Tue, 17 Apr 2018 17:08:32 +0900</pubDate>
</item>
<item>
<title>composer を さくらのレンタルサーバへインストールする</title>
<link>http://logic.moo.jp/memo.php/archive/1200</link>
<description><![CDATA[
sshでさくらのレンタルサーバへログイン後に

# ● ログインシェルを bash に変更
```
chsh -s /usr/local/bin/bash
```

# ● composer のインストール
```
cd
mkdir -p usr/local/bin/
curl -sS https://getcomposer.org/installer | php -- --install-dir=usr/local/bin/
```

# ● .bash_profile に追加
```
# composer
PATH=$PATH:$HOME/usr/local/bin
alias      php=&#039;php -c~/www/php.ini&#039;
alias composer=&#039;php -c~/www/php.ini ~/usr/local/bin/composer.phar&#039;
```...
]]></description>
<pubDate>Tue, 17 Apr 2018 16:39:18 +0900</pubDate>
</item>
<item>
<title>CentOS 5 , 6 で タイムゾーンの設定を変更する</title>
<link>http://logic.moo.jp/memo.php/archive/1199</link>
<description><![CDATA[
# ● CentOS 5 , 6 で タイムゾーンの設定をデフォルトから JST-9 に変更する




### ● 1. /etc/localtime を上書き
```
cp /usr/share/zoneinfo/Japan /etc/localtime
```

### ●2. /etc/sysconfig/clockを編集
```
vim /etc/sysconfig/clock
```

次のように変更します
```
ZONE=&quot;UTF&quot;
UTC=true
ARC=false
```
 ↓
```
ZONE=&quot;Asia/Tokyo&quot;
UTC=true
ARC=false
```


]]></description>
<pubDate>Sat, 31 Mar 2018 10:47:33 +0900</pubDate>
</item>
<item>
<title>RESTステータスコード</title>
<link>http://logic.moo.jp/memo.php/archive/1198</link>
<description><![CDATA[
REST API 設計時の参考に。

### ● 1xx - Informational
```
100 - Continue
101 - Switching Protocols
```

### ● 2xx - Successful
```
200 - OK
201 - Created
202 - Accepted
203 - Non-Authoritative Information
204 - No Content
205 - Reset Content
206 - Partial Content
207 - Multi-Status
```

### ● 3xx - Redirection
```
300 - Multiple Choices
301 - Moved Permanently
302 - Found
303 - See Other
304 - Not...
]]></description>
<pubDate>Wed, 28 Mar 2018 11:33:03 +0900</pubDate>
</item>
<item>
<title>PHPフレームワーク CodeIgniterに .env を導入する</title>
<link>http://logic.moo.jp/memo.php/archive/1197</link>
<description><![CDATA[
RubyonRails や Laravelの .env をCodeIgniterにも導入します。  
これによって WEBアプリの設定が .env に集約されるので、 .gitignore しておけば余計な情報が リポジトリに上がることはありません。  

# ● vlucas/phpdotenv のインストール
codeigniter/application 以下にインストールします。
```
cd codeigniter/application
composer require vlucas/phpdotenv
```


# ● config/config.php の composer_autoload を TRUE にする
エディタで下記の行を TRUE に設定します。  

```
$config[&#039;composer_autoload&#039;] = TRUE;
```

# ●...
]]></description>
<pubDate>Tue, 10 Apr 2018 11:10:15 +0900</pubDate>
</item>
<item>
<title>プリント時に要素を削除する CSS</title>
<link>http://logic.moo.jp/memo.php/archive/1196</link>
<description><![CDATA[
```
&lt;div class=&quot;no-print&quot;&gt;この要素は印刷時に表示されません&lt;/div&gt;
```
```
@media print{
	.no-print {
		display:none;
	}
}
```
]]></description>
<pubDate>Thu, 01 Mar 2018 17:20:50 +0900</pubDate>
</item>
<item>
<title>dig コマンドで DNS,WWW,MX（メール）サーバを調べる</title>
<link>http://logic.moo.jp/memo.php/archive/1195</link>
<description><![CDATA[
# ● dig コマンドで DNS,WWW,MX（メール）サーバを調べる


# ● 1.MXレコード（そのドメイン名宛てのメールを処理するメールサーバ）を調べる「dig mx」
```
dig mx yahoo.co.jp
```

実は オプションは最後でも同じです。（こちらの方がヒストリから違うレコードを見たいときに便利です）
```
dig yahoo.co.jp mx
```


# ● 2.TXTレコード（spfレコード）を調べる「dig txt」
```
dig txt yahoo.co.jp
```


# ● 3.Aレコードを調べる「dig a」
```
dig a yahoo.co.jp
```
または a を省略して
```
dig yahoo.co.jp
```
でも同じです。


# ● 4.NSレコードを調べる「dig ns」
```
dig ns...
]]></description>
<pubDate>Tue, 20 Feb 2018 21:56:31 +0900</pubDate>
</item>
<item>
<title>touchコマンドでファイルの日付を変更する</title>
<link>http://logic.moo.jp/memo.php/archive/1194</link>
<description><![CDATA[
# ● touchコマンドでファイル【 my_file 】の日付を その年の 02/07 15:00 変更する
touch の -t オプションでは 年を省略して 「月」「日」「時」「分」を2桁ずつ指定することができます。
```
touch -t 02071500 my_file
```


# ● touchコマンドでファイル【 my_file 】の日付を 2019年の 02/07 15:00 変更する
touch の -t オプションでは 年を指定したい場合は「年」 「月」「日」「時」「分」を2桁ずつ指定します。
```
touch -t 1902071500 my_file
```


# ● touchコマンドでファイル【 my_file 】の日付を 現在時刻に 変更する
-t オプションを指定しないと現在時刻が設定されます
```
touch my_file
```...
]]></description>
<pubDate>Mon, 19 Feb 2018 14:46:32 +0900</pubDate>
</item>
<item>
<title>UNIXのシェルである日付以降のすべてのファイルを検索する</title>
<link>http://logic.moo.jp/memo.php/archive/1193</link>
<description><![CDATA[
# ● 起点となるファイルを指定して、そのファイルの更新日以降に更新されたファイルを表示させる

## 1. 起点となるファイル（ファイル名はなんでもOK。例：datefile）を 作成する
・現在の日付で 起点となるファイル「datefile」を作成する
```
touch datefile
```

・特定の日付（2018/2/14）で起点となるファイル「datefile」を作成する
```
touch -m -d &#039;2018/2/14 00:00:00&#039; datefile
```

## 2. findコマンドで起点となるファイルを指定して検索
```
find . -type f -newer datefile
```

Macの場合は -t オプションを使用します
```
touch -t 201802140000 datefile
```

...
]]></description>
<pubDate>Fri, 30 Mar 2018 17:30:18 +0900</pubDate>
</item>
<item>
<title>CodeIgniterのファイルキャッシュ</title>
<link>http://logic.moo.jp/memo.php/archive/1192</link>
<description><![CDATA[
```
$this-&gt;load-&gt;driver(&#039;cache&#039;, array(&#039;adapter&#039; =&gt; &#039;file&#039;));
$cache_id = hash(&#039;sha256&#039;, $_SERVER[&#039;REQUEST_URI&#039;]);
if ( $html = $this-&gt;cache-&gt;get($cache_id) ){
	echo $html;
	echo &quot;\n&lt;!-- cached --&gt; \n&quot;;
	return;
}

// html 生成処理
$html = &#039;..................&#039;;

// キャッシュを保存 60*60*24*7(sec) = 7日
$this-&gt;cache-&gt;save($cache_id, $html, 60*60*24*7);
```

]]></description>
<pubDate>Sat, 27 Jan 2018 23:29:01 +0900</pubDate>
</item>
<item>
<title>Bootstrap カルーセル（画像スライド）のデモ</title>
<link>http://logic.moo.jp/memo.php/archive/1191</link>
<description><![CDATA[
#● [Bootstrap3 カルーセルのデモ](http://logic.moo.jp/livedemo/bootstrap_carousel_demo/test.html)

# ● html
```
  &lt;div id=&quot;sampleCarousel&quot; class=&quot;carousel slide&quot; data-ride=&quot;carousel&quot;&gt;
    &lt;ol class=&quot;carousel-indicators&quot;&gt;
      &lt;li class=&quot;active&quot; data-target=&quot;#sampleCarousel&quot; data-slide-to=&quot;0&quot;&gt;&lt;/li&gt;
      &lt;li data-target=&quot;#sampleCarousel&quot; data-slide-to=&quot;1&quot;&gt;&lt;/li&gt;
      &lt;li data-target=&quot;#sampleCarousel&quot;...
]]></description>
<pubDate>Tue, 23 Jan 2018 16:53:53 +0900</pubDate>
</item>
<item>
<title>codeIgniter で ファイルを変更せずにテスト環境と本番環境を切り替える</title>
<link>http://logic.moo.jp/memo.php/archive/1190</link>
<description><![CDATA[
# ● config/config.php 内の記述を「本番環境」「テスト環境」で切り替える
例）config.php 内の **base_url** を
「本番環境」hogehoge.com/　「テスト環境」devsite.com/test/preview01/ 　で切り替えます。  
同様に **database.php** も書き換えます
```
if ( preg_match(&quot;/hogehoge\.com/&quot;, $_SERVER[&#039;HTTP_HOST&#039;]) ){
	$config[&#039;base_url&#039;] = &#039;https://hogehoge.com/&#039;;
} elseif ( preg_match(&quot;/devsite\.com//&quot;, $_SERVER[&#039;HTTP_HOST&#039;]) ){
	$config[&#039;base_url&#039;] =...
]]></description>
<pubDate>Tue, 16 Jan 2018 20:56:21 +0900</pubDate>
</item>
<item>
<title> （sshなどの）ログインシェルを確認し、変更する</title>
<link>http://logic.moo.jp/memo.php/archive/1189</link>
<description><![CDATA[
# ● ログインシェルを確認する
```
cat /etc/passwd 
```


# ● ログインシェルを変更する
###・1. まず変更したいシェルコマンドのパスを調べます。
```
whereis bash
```
結果表示例
```
bash: /usr/local/bin/bash /usr/local/man/man1/bash.1.gz
```


###・2. ログインシェルを変更します
```
chsh -s /usr/local/bin/bash
```
]]></description>
<pubDate>Sun, 14 Jan 2018 17:47:08 +0900</pubDate>
</item>
<item>
<title>Microsoft Edge で history.back() や ブラウザの戻るボタンで戻った時にチェックボックスとラジオボタンが消える</title>
<link>http://logic.moo.jp/memo.php/archive/1188</link>
<description><![CDATA[
Microsoft Edge で history.back() や ブラウザの戻るボタンで戻った時にチェックボックスとラジオボタンが消える
というバグ（仕様っぽい）があります。

これは表示上だけの問題ではなく、DOMツリーからも消えてしまうので、戻ってきた時にJavaScriptで値を見に行っても値自体が存在しません。

以下の方法で対処することは出来ます。（なかなかの力技ですね）

対処法
[Microsoft Edgeでブラウザバックをした時ラジオボタンのチェックが外れる問題 - Qiita](https://qiita.com/activefactor/items/990d5e02f2f69b90b172)


[ブラウザのhistory.back() Edgeはチェックボックス・ラジオボタンの値が消え、Chromeはhiddenの値が消える |...
]]></description>
<pubDate>Sun, 14 Jan 2018 17:02:38 +0900</pubDate>
</item>
<item>
<title>電話番号に自動でつくリンクを消す</title>
<link>http://logic.moo.jp/memo.php/archive/1187</link>
<description><![CDATA[
Edge や iPhone , iPad には電話番号に自動でリンクが付きますが、それを消すには htmlの次のように記述します。

```
&lt;meta name=&quot;format-detection&quot; content=&quot;telephone=no&quot;&gt;
```



]]></description>
<pubDate>Sun, 14 Jan 2018 14:52:56 +0900</pubDate>
</item>
<item>
<title>nodebrewより便利な node.js バージョン自動切り替え ndenv をインストールする</title>
<link>http://logic.moo.jp/memo.php/archive/1186</link>
<description><![CDATA[
ターミナルから以下を実行します。
```
git clone https://github.com/riywo/anyenv ~/.anyenv
```
「コマンドライン デベロッパーツールが必要です」と言われる時は自動で出て来るウィンドウからインストールしましょう。

##・1. まず anyenv をインストール
```
git clone https://github.com/riywo/anyenv ~/.anyenv
```
##・anyenvのパスをセット
```
echo &#039;export PATH=&quot;$HOME/.anyenv/bin:$PATH&quot;&#039; &gt;&gt; ~/.bash_profile
```
```
echo &#039;eval &quot;$(anyenv init -)&quot;&#039; &gt;&gt; ~/.bash_profile
```
```
exec $SHELL -l
```

##・2....
]]></description>
<pubDate>Wed, 07 Feb 2018 09:19:00 +0900</pubDate>
</item>
<item>
<title>昔のWindows IE でのブラウザチェックを行う</title>
<link>http://logic.moo.jp/memo.php/archive/1185</link>
<description><![CDATA[
# ● 仮想環境の Windows ie 8 9 10 11 と edge を使用する
https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/

こちらからバーチャル環境をダウンロードして Virtual box を使って仮想の Windows と ブラウザ環境を
立ち上げます。

# ● Browser Stack
検証のエビデンスがほしい時はこちらを使うといいでしょう。  
とても便利です。  

https://www.browserstack.com/


]]></description>
<pubDate>Thu, 28 Dec 2017 21:06:14 +0900</pubDate>
</item>
<item>
<title>PHPでエクセルファイルを扱う</title>
<link>http://logic.moo.jp/memo.php/archive/1184</link>
<description><![CDATA[
# ● PHPExcelのインストール
```
composer require phpoffice/phpexcel
```

# ● エクセルファイルの読み込みとデータ表示
```
require_once __DIR__ . &#039;/vendor/autoload.php&#039;;

$excel_file  = &#039;myfile.xlsx&#039;;

// ファイルの読み込み
$objPHPExcel = PHPExcel_IOFactory::load( &#039;./&#039; . $excel_file );
$objPHPExcel-&gt;setActiveSheetIndex(0);	// 先頭のシートを選択
$sheet = $objPHPExcel-&gt;getActiveSheet();

foreach ($sheet-&gt;getRowIterator() as $row) {
	$tmp =...
]]></description>
<pubDate>Thu, 28 Dec 2017 09:45:21 +0900</pubDate>
</item>
<item>
<title>WEBサイトのリンク切れを検知するリンクチェックツール</title>
<link>http://logic.moo.jp/memo.php/archive/1182</link>
<description><![CDATA[
# ● リンクチェッカー(リンク切れチェックツール)
http://www.dead-link-checker.com/ja/


# ● W3C Link Checker
http://validator.w3.org/checklink


# ● Online Broken Link Checker
http://www.brokenlinkcheck.com/


]]></description>
<pubDate>Mon, 25 Dec 2017 11:26:51 +0900</pubDate>
</item>
<item>
<title>パスワードの最後の1文字以外を * にマスクするTwigフィルタ</title>
<link>http://logic.moo.jp/memo.php/archive/1181</link>
<description><![CDATA[
**Twig/Extensionuser/Passwordmask.php** を以下のように作成します
```
class Twig_Extensionuser_Passwordmask extends Twig_Extension
{
    public function getFilters()
    {
        return array(&#039;passwordmask&#039; =&gt; new Twig_Filter_Method($this, &#039;passwordmask&#039;));
    }
    public function passwordmask($string)
    {
        if (strlen($string) == 1) {
            return &#039;*&#039;;
        }

        $out = &#039;&#039;;...
]]></description>
<pubDate>Wed, 20 Dec 2017 14:40:08 +0900</pubDate>
</item>
<item>
<title>PHPのpreg_replace_callback() にクラスのメソッドを使用する</title>
<link>http://logic.moo.jp/memo.php/archive/1180</link>
<description><![CDATA[
PHPのpreg_replace_callback() にクラスのメソッドを使用するには
第2引数に配列で $thisを渡します
```
$v = preg_replace_callback($pattern, array($this,&#039;my_callback&#039;), $v);
```


]]></description>
<pubDate>Thu, 07 Dec 2017 19:40:31 +0900</pubDate>
</item>
<item>
<title>phpで配列を文字数の多い順にソート（並び替え）する</title>
<link>http://logic.moo.jp/memo.php/archive/1179</link>
<description><![CDATA[
phpで配列を文字数の多い順にソート（並び替え）するには以下のようにします。
## ● 普通の配列の場合は usort() を使用します
```
usort($output_array, create_function(&#039;$b,$a&#039;, &#039;return mb_strlen($a, &quot;UTF-8&quot;) - mb_strlen($b, &quot;UTF-8&quot;);&#039;));
```

## ● 連想配列の場合は uasort() を使用します
```
uasort($output_array, create_function(&#039;$b,$a&#039;, &#039;return mb_strlen($a, &quot;UTF-8&quot;) - mb_strlen($b, &quot;UTF-8&quot;);&#039;));
```

例:
```
$my_array = array(
	&#039;あいうえお&#039; ,
	&#039;12345789&#039; ,...
]]></description>
<pubDate>Sun, 03 Dec 2017 16:12:00 +0900</pubDate>
</item>
<item>
<title>BootstrapのCSSスタイルを＜div＞タグの中にだけ適用する</title>
<link>http://logic.moo.jp/memo.php/archive/1178</link>
<description><![CDATA[
# ● BootstrapのCSSスタイルを＜div＞タグの中にだけ適用する

既存の 非bootstrap 環境で作成されたwebサイトに対し、後から Bootstrapの部品を入れたい場合があります。    
この時＜head＞タグでbootstrapを読み込んでしまうと＜body＞タグ全体に Bootstrapのcssスタイルが適用され  
グローバルナビゲーションなどのレイアウトが崩れる可能性があります。  

そこで任意のクラス内だけbootstrapのcssstyleを適用できれば既存のナビゲーションが崩れることはありません

こちらにとても簡単な方法で クラス内だけ Bootstrap を適用する方法を採用されている方がいます  
[特定のdiv要素の中だけBootstrapを適用する -...
]]></description>
<pubDate>Fri, 01 Dec 2017 18:55:26 +0900</pubDate>
</item>
<item>
<title>CSSでカーニング調整をして先頭が 「 （カッコ）の左端を揃える</title>
<link>http://logic.moo.jp/memo.php/archive/1177</link>
<description><![CDATA[
WEBで先頭が 「 （カッコ）の文章があると、括弧の左端に隙間ができてしまい、左端を綺麗に揃えることができません。
Illustratorならカーニングで簡単に調整してしまうところですが、CSSの場合は次のプロパティを使用します。

# ● CSSの「font-feature-settings」プロパティ

font-feature-settingsプロパティを使用すると、カーニングの自動調整ができます。

## ▲ 対応フォント
Open type 形式のフォントなら対応可能です
```
ヒラギノ角ゴシック
ヒラギノ明朝
游ゴシック体
游明朝体
Noto Sans
```
Windowsの **メイリオ** は対応していません


## ▲ 対応ブラウザ
```
全ブラウザ（ Edge, Safari, Chrome, Firefox , IEは 11 以降 ）
```...
]]></description>
<pubDate>Mon, 27 Nov 2017 15:41:02 +0900</pubDate>
</item>
<item>
<title>IEやEdgeでhistory.back()や「戻る」ボタンで戻った時に消える時の対処法その1</title>
<link>http://logic.moo.jp/memo.php/archive/680</link>
<description><![CDATA[
IEやEdgeでhistory.back()や「戻る」ボタンで戻った時に消える時の対処法

PHPでセッションの使用 **session_start();** を実行すると、ブラウザのHTTPヘッダには

```
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
```

というのが必ず送られます。  
これが送られるとそのページはキャッシュされないので、例えばフォーム入力画面の場合  
次の確認画面から history.back(); で返ってくると、入力欄が消えてしまいます。  
（ただし Google Chrome...
]]></description>
<pubDate>Sat, 25 Nov 2017 00:41:53 +0900</pubDate>
</item>
<item>
<title>IE6 〜 IE11 の表示チェックが行える IE Net Renderer</title>
<link>http://logic.moo.jp/memo.php/archive/1175</link>
<description><![CDATA[
http://netrenderer.com/index.php

]]></description>
<pubDate>Fri, 24 Nov 2017 16:48:52 +0900</pubDate>
</item>
<item>
<title>Twig で 現在の日付までのドロップダウンリストを生成する</title>
<link>http://logic.moo.jp/memo.php/archive/1174</link>
<description><![CDATA[
新しい年になった時にドロップダウンリストの項目を一つ増やしたいという時があります。
Twigを使用している場合は次のように書くと現在の年までのドロップダウンリストを生成いたします

```
&lt;select name=&quot;y&quot;&gt;
	&lt;option value=&quot;&quot;&gt;----&lt;/option&gt;
{% set year_start = 2010 %}
{% set year_end   = &quot;now&quot;|date(&quot;Y&quot;) %}
{% for i in year_start..year_end %}
	&lt;option value=&quot;{{i}}&quot;&gt;{{i}}&lt;/option&gt;
{% endfor %}
&lt;/select&gt;
```
 ↓ このように生成されます
 
```
&lt;select name=&quot;y&quot;&gt;
	&lt;option value=&quot;&quot;&gt;----&lt;/option&gt;
	&lt;option...
]]></description>
<pubDate>Thu, 09 Nov 2017 16:55:00 +0900</pubDate>
</item>
<item>
<title>Twigテンプレートで動的に継承元テンプレートを変更する</title>
<link>http://logic.moo.jp/memo.php/archive/1171</link>
<description><![CDATA[
Twigテンプレートで動的に継承元テンプレートを変更するには次のように一度変数にファイル名を入れて
そこから呼び出します。

**lang_setting** が **en** の時はファイル「base_english.html」を、それ以外の時はファイル「base_japanese.html」を継承元にするサンプル  


```
{% if lang_setting == &#039;en&#039; %}{% set base_template = &#039;base_english.html&#039; %}
{% else %}{% set base_template = &#039;base_japanese.html&#039; %}
{% endif %}

{% extends base_template %}
```
]]></description>
<pubDate>Tue, 07 Nov 2017 15:41:37 +0900</pubDate>
</item>
<item>
<title>robots.txt を設置して検索エンジンクローラーが巡回しないようにする</title>
<link>http://logic.moo.jp/memo.php/archive/1170</link>
<description><![CDATA[
検索エンジンクローラーに指示を与えるにはサイトのトップに robotx.txt を設置します。

# 全クローラーを対象にクロールをさせない
（最後に空行を1行入れます）
```
User-agent: *
Disallow: /

```

# ● robots.txt 解析ツール
http://www.searchengineoptimization.jp/robots-txt-analyzer


]]></description>
<pubDate>Wed, 01 Nov 2017 22:57:39 +0900</pubDate>
</item>
<item>
<title>iPhoneでフォーム入力時に 数字だけのキーボードを表示させる</title>
<link>http://logic.moo.jp/memo.php/archive/1169</link>
<description><![CDATA[
iPhoneやandroidなどスマホでフォーム入力時に 数字だけのキーボードを表示させるには  
**pattern** を使用します。

例 :
```
&lt;input type=&quot;text&quot; pattern=&quot;\d*&quot;&gt;
```
とします。

もちろん
```
&lt;input type=&quot;number&quot; pattern=&quot;\d*&quot;&gt;
```
でもOKです。
]]></description>
<pubDate>Fri, 10 Nov 2017 17:42:37 +0900</pubDate>
</item>
<item>
<title>flexboxによる上下、左右センタリング（中央寄せ）</title>
<link>http://logic.moo.jp/memo.php/archive/1168</link>
<description><![CDATA[
flexboxによる上下、左右センタリング（中央寄せ）

# ● flexboxによる左右のセンタリング
```
	justify-content: center;
```

# ● flexboxによる上下のセンタリング
```
	align-items: center;
```

# ● サンプル

http://logic.moo.jp/data/filedir/1168_1.html 
  
左右の センタリング用に ** .flex_center **  
上下左右の センタリング用に ** .flex_middle_center **  
を作成しています。  

```
&lt;style type=&quot;text/css&quot;&gt;
*{
	box-sizing: border-box;
}
.flex_middle_center{
	display: flex;...
]]></description>
<pubDate>Mon, 16 Oct 2017 10:56:48 +0900</pubDate>
</item>
<item>
<title>無料のオンラインPDF書き込みサービス</title>
<link>http://logic.moo.jp/memo.php/archive/1167</link>
<description><![CDATA[
pdfファイルにテキストを加えたい時Macなら【プレビュー.app】で可能ですが、  
WEB上にも同様のサービスがあります。  

● pdfescape
https://www.pdfescape.com/

]]></description>
<pubDate>Sat, 07 Oct 2017 12:34:16 +0900</pubDate>
</item>
<item>
<title>photoshopで複数行のテキストレイヤーを改行ごとに別々のレイヤーにばらすスクリプト</title>
<link>http://logic.moo.jp/memo.php/archive/1166</link>
<description><![CDATA[
photoshopで複数行のテキストレイヤーを改行ごとに別々のレイヤーにばらすスクリプト

↓ こちらからダウンロードして **/Applications/Adobe Photoshop CC XXXX/Presets/Scripts** にコピーします    
[複数行のテキストを1行づつ分割するPhotoshopスクリプト | Cubix](http://chibinowa.net/note/ps/split-multi-line.html)

こちらのスクリプト Mac の PhotoshopCC では以下を書き換えると動作します

11行目
```
if ($.os.indexOf(&#039;Mac&#039;) &gt;= 0) {
	var BR = String.fromCharCode(10);
```
↓
```
if ($.os.indexOf(&#039;Mac&#039;) &gt;= 0) {
	var...
]]></description>
<pubDate>Tue, 19 Sep 2017 13:01:53 +0900</pubDate>
</item>
<item>
<title>jQuery でのフォーム操作</title>
<link>http://logic.moo.jp/memo.php/archive/666</link>
<description><![CDATA[
#● フォームの種類を判別する（ 例 : checkbox か radioか）
```
alert( $(&#039;#hoge&#039;).prop(&#039;type&#039;) );
```

#● タグ名からフォームの種類を判別する（ 例 : SELECT を判別 ）
```
if ( $(&quot;[name=&#039;yoyaku&#039;]&quot;).prop(&quot;tagName&quot;) == &#039;SELECT&#039; ){
//処理
}
```



#● 1行テキストエリア（id=&quot;hoge&quot;）の値を取得する
```
&lt;input type=&quot;text&quot; name=&quot;hoge&quot; id=&quot;hoge&quot; value=&quot;999&quot; &gt;
```
```
//  jQuery
var v = $(&#039;#hoge&#039;).val();
// JavaScriptのみ
var v = document.getElementById(&#039;hoge&#039;).value;...
]]></description>
<pubDate>Thu, 21 Sep 2017 10:23:38 +0900</pubDate>
</item>
<item>
<title>vue.js の ミニマルな形</title>
<link>http://logic.moo.jp/memo.php/archive/1165</link>
<description><![CDATA[

[デモはこちら](http://logic.moo.jp/data/filedir/1165_1.html)

# ● 変数の表示
```
&lt;h1&gt;※変数の表示&lt;/h1&gt;
&lt;div id=&quot;my_template&quot;&gt;
&lt;p&gt;変数を出力します : {{ text }}&lt;/p&gt;
&lt;/div&gt;
&lt;script&gt;
new Vue({
  el  : &#039;#my_template&#039;,
  data: {
    text: &#039;日本語の文字です&#039;
  }
});
&lt;/script&gt;
```

# ● 選択
```
&lt;h1&gt;※選択&lt;/h1&gt;
&lt;div id=&quot;my_template_selected&quot;&gt;
&lt;select v-model=&quot;my_value_selected&quot;&gt;
	&lt;option value=&quot;&quot;&gt;=== 選択してください ===&lt;/option&gt;...
]]></description>
<pubDate>Mon, 18 Sep 2017 15:51:28 +0900</pubDate>
</item>
<item>
<title>Google Chromeでローカルにあるcssファイルを直接編集し保存する</title>
<link>http://logic.moo.jp/memo.php/archive/1164</link>
<description><![CDATA[
cssファイルを編集するときに Google Chromeのデベロッパーツールで値を変更した後、
エディターにその値を持って行きエディターを使って保存したりしてないでしょうか？

**そんな面倒なことをしなくても Google Chrome 自体に .css を保存する機能があります。**

以下の方法でGoogle Chromeを使ってローカルにあるcssファイルを直接編集して保存してみましょう。

# ● ローカルのフォルダをGoogleChromeに読み込ませる（ Chrome Version 62 の場合 ）

### 1. Google Chromeを立ち上げる

### 2. 右クリックし「検証」を選択する
デベロッパーツールのウィンドウが画面下表示されます

### 3. デベロッパーツール内メニューの「Sources」を選択する。

### 4....
]]></description>
<pubDate>Fri, 06 Apr 2018 10:53:11 +0900</pubDate>
</item>
<item>
<title>PHPで日付を比較して日数の差を計算する</title>
<link>http://logic.moo.jp/memo.php/archive/1163</link>
<description><![CDATA[
 「○○○○イベント」まであと xx 日 ! をPHPで算出したい時があります。  
以下の様にDatetimeクラスを使うと簡単に算出できます  

```
$event_date = &#039;2017-09-30 15:00:00&#039;;
$day1 = new DateTime( $event_date );
$day2 = new DateTime();
$day1-&gt;modify(&#039;noon&#039;);	// 時刻 12:00 をセット
$day2-&gt;modify(&#039;noon&#039;);	// 時刻 12:00 をセット

$interval = $day1-&gt;diff($day2);
$interval_day  = (int)$interval-&gt;format(&#039;%a&#039;);

echo &quot;イベントまであと({$interval_day}日)です。&quot;;

```

なおこの diffメソッドは...
]]></description>
<pubDate>Mon, 11 Sep 2017 18:09:48 +0900</pubDate>
</item>
<item>
<title>Twigで日付から日本語の曜日を返すフィルター</title>
<link>http://logic.moo.jp/memo.php/archive/1162</link>
<description><![CDATA[
**Twig/Extensionuser** にファイル名 **Youbi.php** で保存します。

Youbi.php
```
&lt;?php

class Twig_Extensionuser_Youbi extends \Twig_Extension
{
    public function getFilters()
    {
        return array(
            &#039;youbi&#039; =&gt; new \Twig_Filter_Method($this, &#039;youbi&#039;, array(
                &#039;needs_environment&#039; =&gt; true,
                &#039;needs_context&#039; =&gt; true,
                &#039;is_safe&#039; =&gt; array(...
]]></description>
<pubDate>Fri, 08 Sep 2017 15:25:13 +0900</pubDate>
</item>
<item>
<title>MySQLの外部キー制約</title>
<link>http://logic.moo.jp/memo.php/archive/1161</link>
<description><![CDATA[
「外部キー制約」はいわゆる『親テーブル - 子テーブル』というテーブル関係において
子テーブルに設定するキー制約です。

MySQLでは以下の条件を満たす時に外部キー制約を設定することができます
```
・親テーブルと子テーブルが両方InnoDBであること
・子テーブルのキーを設定するカラムと親テーブルの参照するカラムの型が一致していること
・親テーブルの参照するカラムにインデックスが設定されていること
```

#● MySQLの外部キー制約の設定方法
```
親テーブル: user_table
子テーブル: user_detail_table
紐付けるカラム： user_table.user_id   &lt;-&gt;  user_detail_table.user_id
```
```
ALTER TABLE
	user_detail_table
ADD FOREIGN KEY...
]]></description>
<pubDate>Fri, 25 Aug 2017 17:06:15 +0900</pubDate>
</item>
<item>
<title>CentOSにメール送信サーバpostfixをインストールする</title>
<link>http://logic.moo.jp/memo.php/archive/1160</link>
<description><![CDATA[
#● 現在postfixがインストールされているかどうかを調べる

```bash
systemctl status postfix
```

###・インストールされていない場合の表示
```
Unit postfix.service could not be found.
```


###・インストールされている場合の表示
現在のステータスが帰ります
```
● postfix.service - Postfix Mail Transport Agent
   Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled)
   Active: inactive (dead)
```


#● centosにpostfixをインストールする
```
yum -y...
]]></description>
<pubDate>Fri, 21 Jul 2017 21:33:28 +0900</pubDate>
</item>
<item>
<title>Twigで生年月日から現在の年齢を返すフィルター</title>
<link>http://logic.moo.jp/memo.php/archive/1159</link>
<description><![CDATA[
```php
new Twig_SimpleFilter(&#039;getage&#039;, array($this, &#039;getage&#039;)) ,
```

```php
    /**
     * 誕生日文字列（ 例: 1983-12-19）から現在の年齢を返します
     *
     * @param   string      $date_name （例: &#039;1983-12-19&#039;）
     * @return  int         現在の年齢
     */
    public function getage( $date_name )
    {
        $birth = date(&#039;Ymd&#039;, strtotime($date_name));
        $now = date(&quot;Ymd&quot;);
        return...
]]></description>
<pubDate>Tue, 05 Sep 2017 16:05:39 +0900</pubDate>
</item>
<item>
<title>JavaScript（jquery）でドロップダウンリストの絞り込みを行う</title>
<link>http://logic.moo.jp/memo.php/archive/1158</link>
<description><![CDATA[
ドロップダウンリストの項目があまりに置いときにテキスト入れを用意しておいて絞り込み検索を行いたいと言った時があります。
その時は以下の様にすればいいでしょう

#● JavaScriptでドロップダウンリストの絞り込みを行うのデモ
[JavaScript（jquery）でドロップダウンリストの絞り込みを行うのデモ](http://logic.moo.jp/data2/list_changer.html)


#● コード

##・ html
```html
&lt;select name=&quot;&quot; id=&quot;user_list_men&quot; style=&quot;margin-bottom: 5px;&quot;&gt;
&lt;option value=&quot;&quot;&gt;===選択してください===&lt;/option&gt;
&lt;option value=&quot;Craig Ball&quot;&gt;Craig Ball&lt;/option&gt;
&lt;option...
]]></description>
<pubDate>Mon, 03 Jul 2017 14:45:39 +0900</pubDate>
</item>
<item>
<title>スマホアプリ、スマホWEB制作アプリSketchのテクニック</title>
<link>http://logic.moo.jp/memo.php/archive/1157</link>
<description><![CDATA[
Sketchのテクニック

#● シンボルを作成していろんなページで同じパーツを使い回す
シンボルにしたいオブジェクトを選択した状態で「Layer」→「Create Symbol」を選択してシンボルを作成。
後はそのシンボルをコピーペーストでいろんなページに配置すれば、シンボル修正時にすべてのページで反映されます


#● Sketchのプラグインを検索して自動でインストールする
こちらのアプリ sketchtoolbox をインストールすると簡単にプラグインを追加することができます。  
http://sketchtoolbox.com/  

こちらのアプリ Sketchpacks for macOS も簡単にプラグインを追加することができます。  
Sketchpacks for macOS
https://sketchpacks.com/


#●...
]]></description>
<pubDate>Thu, 06 Jul 2017 15:25:15 +0900</pubDate>
</item>

</channel>
</rss>