めも。
if ($_SERVER['HTTPS'] != 'on') {
// httpsリクエストではない場合の処理
} else {
// httpsリクエストである場合の処理
}
めも。
if ($_SERVER['HTTPS'] != 'on') {
// httpsリクエストではない場合の処理
} else {
// httpsリクエストである場合の処理
}
衝撃の発見。
これは相当便利な匂いがする。
http://brandonwamboldt.github.io/utilphp/
上記公式URLを参照すると分かる通り、様々な便利関数が提供されている。
これは今後include必須になるかも!?
面白い関数を見つけたのでメモ。
$var_1 = 'abcdee'; $var_2 = 'eefghi'; similar_text($var_1, $var_2, $percent); var_dump($percent); ↓ float(33.333333333333)
上記のように二つの文字列を渡すと、第三引数に類似性のパーセンテージを返してくれる。
これは何か面白い事に使えそうな予感。
メモ。
下記関数に削除したいディレクトリを投げればOK。
投げたディレクトリが相対パス、またはシンボリックリンクの場合、第二引数にtrueを渡すと参照を解決してくれる。
function destroyDir($dir, $virtual = false) {
$ds = DIRECTORY_SEPARATOR;
$dir = $virtual ? realpath($dir) : $dir;
$dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir;
if(is_dir($dir) && $handle = opendir($dir)) {
while($file = readdir($handle)) {
if($file == '.' || $file == '..') {
continue;
} elseif(is_dir($dir.$ds.$file)) {
destroyDir($dir.$ds.$file);
} else {
unlink($dir.$ds.$file);
}
}
closedir($handle);
rmdir($dir);
return true;
} else {
return false;
}
}
ユニークな関数を見つけたのでメモ。
function encode_email($email, $linkText, $attrs = '')
{
// remplazar aroba y puntos
$email = str_replace('@', '@', $email);
$email = str_replace('.', '.', $email);
$linkText = str_replace('@', '@', $linkText);
$linkText = str_replace('.', '.', $linkText);
$part1 = '<a href="ma';
$part2 = 'ilto:';
$part3 = '" '. $attrs .' >';
$part4 = '</a>';
$encoded = '<script type="text/javascript">';
$encoded .= "document.write('$part1');";
$encoded .= "document.write('$part2');";
$encoded .= "document.write('$email');";
$encoded .= "document.write('$part3');";
$encoded .= "document.write('$linkText');";
$encoded .= "document.write('$part4');";
$encoded .= '</script>';
return $encoded;
}
下記のように使う。
$email = 'test@example.com'; $link = 'メールはこちら。'; $attrs = 'class = "test"'; echo encode_email($email, $link, $attrs);
すると下記HTMLが生成される。
<script type="text/javascript">document.write('<a href="ma');document.write('ilto:');document.write('test@example.com');document.write('" class = "test" >');document.write('メールはこちら。');document.write('</a>');</script>
結果下記コードがブラウザに出力される。
<a href="mailto:test@example.com" class="test">メールはこちら。</a>
面白いね。
膨大な量の文字列をやりとりする場合の選択肢として一つめも。
$string ='aaaaaaaaaabbbbbbbbbbccccccccccddddddddddeeeeeeeeee'; $compressed = gzcompress($string); echo "Original size: ".strlen($string)."\n"; echo "Compressed size: ".strlen($compressed)."\n"; ↓ Original size: 50 Compressed size: 21
文字列を展開したい場合は下記の通り。
$original = gzuncompress($compressed);
自分用。
| __LINE__ | 現在の行数を返す |
| __FILE__ | 現在のファイルパスを返す |
| __DIR__ | 現在のディレクトリパスを返す |
| __FUNCTION__ | 現在処理中の関数名を返す |
| __CLASS__ | 現在処理中のクラス名を返す |
| __METHOD__ | クラスのメソッド名を返す |
| __NAMESPACE__ | 現在の名前空間名を返す |
こんな素敵な関数がデフォルトで存在していたなんて。
highlight_string('<?php phpinfo(); ?>');
この出力結果は下記となる。
<code><span style="color: #000000"> <span style="color: #0000BB"><?php phpinfo</span><span style="color: #007700">(); </span><span style="color: #0000BB">?></span> </span> </code>
「」というコードのシンタックスをハイライトしてくれている。
非常に素敵。