if (is_array($hoge)) { echo "配列である"; } else { echo "配列でない"; }
$str ="ネコ,ヤギ-カニあサメ.ワシ"; $ary = preg_split("/,|-|あ|\./",$str); var_dump($ary)
array (size=5) 0 => string 'ネコ' 1 => string 'ヤギ' 2 => string 'カニ' 3 => string 'サメ' 4 => string 'ワシ'
$str="いろは"; $s = mb_substr($str ,0 ,1); echo $s;
い
$str="いろは"; $str = mb_substr($str ,1); echo $str;出力
ろは
/** * 分数表記を浮動小数点式に変換する * @param string $str 分数表記の文字列 (例: 314/100) * @return number 浮動小数値 */ function fracToFloat($str){ // 「/」が文字列中に存在しなかったり、空であったりするなら、引数を返して処理を抜ける if(!preg_match("/\//", $str) || empty($str)){ return $str; } // 「/」で分割して配列を作り、チェックと数値加工を施す。 $ary=explode("/",$str); foreach($ary as $i => $v){ $v = floatval ($v); if(is_numeric($v)){ $ary[$i] = $v; }else{ return $str; } } // 分母が0でないなら除算をする。 if($ary[1]==0){ return $str; } $v = $ary[0] / $ary[1]; return $v; }
$exifData = exif_read_data('img/test4.jpg');
/** * 文字列から日付の部分を別の日付に置換 * @param string | date $replace_date * @param string $str 対象文字列 * @return string 置換後の文字列 */ function replaceDate($replace_date,$subject){ $re = '/([0-9]{4})(\/|-|年)([0-9]{1,2})(\/|-|月)([0-9]{1,2})/'; $res = preg_replace($re, $replace_date, $subject); return $res; }
要素1から2行だけ除去する
$ary = [10,20,30,40]; var_dump($ary); array_splice($ary,1,2); var_dump($ary);
array (size=4) 0 => int 10 1 => int 20 2 => int 30 3 => int 40
array (size=2) 0 => int 10 1 => int 40
要素2に1000を挿入
$ary = [10,20,30,40]; var_dump($ary); array_splice($ary,2,0,1000); var_dump($ary);
array (size=4) 0 => int 10 1 => int 20 2 => int 30 3 => int 40
array (size=5) 0 => int 10 1 => int 20 2 => int 1000 3 => int 30 4 => int 40
要素2に「abc」に置き換え(変更)
$ary = [10,20,30,40]; var_dump($ary); array_splice($ary,2,2,'abc'); var_dump($ary);
array (size=4) 0 => int 10 1 => int 20 2 => int 30 3 => int 40
array (size=4) 0 => int 10 1 => int 20 2 => string 'abc' (length=3) 3 => int 40
要素2以降を除去する
$ary = [10,20,30,40]; var_dump($ary); array_splice($ary,2); var_dump($ary);
array (size=4) 0 => int 10 1 => int 20 2 => int 30 3 => int 40
array (size=2) 0 => int 10 1 => int 20
関数を引数として渡す方法
$str = "ネコ"; $funcA = function($str){ echo "Hello " . $str; }; test1( $str, $funcA ); function test1( $str, $callback ) { echo 'Test1<br>'; $callback($str); }
Test1 Hello ネコ
JavaScriptでよく見かけるコールバック関数の記述方法
$str = "ヤギ"; test2( $str, function($str){ echo "Hello " . $str; } ); function test2( $str, $callback ) { echo 'Test2<br>'; $callback($str); }
Test2 Hello ヤギ
コールバック関数を関数名で指定する方法
$str = "カニ"; test3( $str, 'hello_print' ); function test3( $str, $callback ) { return call_user_func( $callback, $str ); } function hello_print($str) { echo "Hello " . $str; }
Hello ヤギ
クラスのメソッドを文字列で指定する方法
$str = "サメ"; $obj4 = new Class4(); test4( $str, array( $obj4,'hello_print4')); function test4( $str, $callback ) { return call_user_func( $callback, $str ); } class Class4{ public function hello_print4($str){ echo "Hello " . $str; } }
Hello サメ