開発日記

PHPを学び始めて1年8ヶ月ですが、とりあえずつかえる!と思ったことを、

易しいこと、難しいこと関係なく簡単に書いていきます。

 

①-1 配列をカンマ区切りの文字列にしたい(implode関数)

$array = array('横山', '岡部', '江田');
$str = implode(',', $array);

このように処理すると

変数$strは '横山,岡部,江田' となります。

カンマ区切りにするとそのままCSVに出力できますよね!!

もちろんカンマ以外でも対応可能です。

 

①-2 カンマ区切りの文字列を配列に格納したい(explode関数)

$str = '四位,蛯名,藤田';
$array = explode(',', $str);

このように処理すると

配列$arrayは ([0] => '四位' [1] => '蛯名' [2] => '藤田') となります。

CSVを読み込んで処理する場合によく使いますね!!

もちろんカンマ以外でも対応可能です。

 

②文字列の前後のスペースを削除したい

$str = ' あいうえお ';
$str = trim($str);

このように処理すると変数$strの値は'あいうえお 'となってしまい、

末尾の全角スペースが削除されません。

trim関数は文字列の先頭および末尾からホワイトスペース(半角スペース、タブ、改行)を除去する、という関数ですので全角スペースは削除してくれません。

 

このような場合は正規表現を用い、前後の全半角を除去するとよいです。

$str = preg_replace('/^[  ]+/u', '', $str);  // 前の全半角スペースを除去
$str = preg_replace('/[  ]+$/u', '', $str); // 後の全半角スペースを除去

このように処理すると

変数$strは'あいうえお'となり、うまく除去できました!

 

ちなみにPHPのデバッグ等でvar_dumpやechoを用いる場合に文字化けを防ぐ方法として

header("Content-type: text/html; charset=UTF-8");

header関数でHTTPヘッダーを送信し表示。ヘッダーで文字コードUTF-8を指定。

これをva_dumpやechoの直前に記述しておけば日本語の文字化けが防げます。

ただ技術を書くだけでなく、「こういった場面で使える」など具体的に書いていくようにします。

たまにのぞいてあげてください。

お問い合わせ

サービスに関するご相談やご質問などこちらからお問い合わせください。

03-55107260

受付時間 10:00〜17:00