スレッド表示 | フラット表示〕 全トピック 923 件中 210 番目 次≫ ≪前

array_map について

created: 2006-08-06 13:01 | modified: 2006-08-06 16:54 | reply: 2

[3208] preg_replaceだけで十分

user: ach | created: 2006-08-06 16:01
http://jp.php.net/manual/ja/function.preg-replace.php
>subject が配列の場合、検索と置換は subject の各要素に対して行われ、返り値も配列となります。
つまり
$a = array('foo','hoge','bar');
$b = preg_replace('/o/','*',$a);

var_dump($b);

/*結果
array(3) {
[0]=> string(3) "f**"
[1]=> string(4) "h*ge"
[2]=> string(3) "bar"
}
*/


あえてarray_mapを使うなら
>配列の長さが等しくない場合、最も短い配列は空の要素で拡張されます。
とあったので,(無理矢理に)利用して
function mapReplace($input, $from, $to)
{
static $sFrom, $sTo;
if (!is_null($from)) $sFrom = $from;
if (!is_null($to)) $sTo = $to;
return preg_replace($sFrom, $sTo, $input);
}

$lineArray = array_map('mapReplace', $lineArray, (array)"/\t/", (array)"\n");
こんなんでどうでしょう

array_walkでもマニュアルに載っているサンプルのtest_alterをちょこちょこっと書き換えればできるはず.
Parent: 3207  reply: 3210 返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 923 件中 210 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑