ミジンコWEBデザイナーの車窓から

WEBディレクターからミジンコWEBデザイナーに転身。備忘録を兼ねて技術的な事、テンプレートの作成、他雑感。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

特定の文字列が含まれているかチェックする【strstr】

$row = "【この文字が含まれていたら抽出する】"

if (strstr($row, 'この文字が含まれていたら抽出する')) {
 //ここで処理
 $row = str_replace("抽出する","削除する",$row);
}

結果▼
この文字が含まれていたら削除する

スポンサーサイト

特定の文字列で囲っている文字を取得する【preg_match】


$row = "ここから【欲しい文字】ここまで";

$keyword_start = '【';
$keyword_end = '】';

preg_match('/'.$keyword_start.'(.*?)'.$keyword_end.'/', $row, $match);
$text = $match[0];

あとは置換するなりなんなり。

$text = str_replace('【',"",$text);
$text = str_replace('】',"",$text);

csv(テキスト)ファイルの行数、列数の取得


行数は以下のようにして取得。

echo sizeof(file("./data.csv"));


列数は以下のようにして取得します。fgetcsvを使う。

echo sizeof(fgetcsv(fopen("./data.csv", "r"), 1000, ","));

さくらインターネットで出るメールの不具合

さくらインターネットでマルチドメインで運用かつ、メールをgoogleappsを使ってたりすると
おかしな事になる模様。

例えば
mb_sendmailなんかを使って同じサーバー内のgoogleappsに設置しているメールを送信しようとすると
どういうわけかDNSを読みに行かずに同じサーバー内に送ってしまう

つまり

googleappメール(info@xxx.com)
さくらメール(info@yyy.com)

xxx.comとyyy.comを同じさくらインターネットのサーバーで運用していると、
info@xxx.comに送信したメールはinfo@yyy.comに送信されてしまうという事。

だからもし、infoアカウントのメールアドレスをさくらに作っていない場合は
internalservererrorになる模様。


・回避策は
外部DNS限定で使う
または同じアカウント(info)等を作っておく

しかなさそう。

ドメインを取得する関数@parse_url

// URLをパース
$url = parse_url('http://test.com/aaaa/bbbb/ccc.html');

// ドメインを取りたい場合
echo $url['host']; // test.com

// パスを取りたい場合
echo $url['path']; // /aaaa/bbbb/ccc.html

これで他サイトのURLも取得可能。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。