PHPのリファレンス

foreachで回している配列に対して副作用を与えたい場合は、配列要素が格納される一時変数に、&を付けて定義すればいいようでした。

<?php
foreach ($items as &$item) {
$item["longstring"] = mb_substr($item["longstring"], 0, 47, "UTF-8");
}
?>

foreach ($items as $item) と書くと、配列の要素のコピーが、$itemに格納されるが、&$itemとすれば配列の要素のリファレンスが格納される。

大したことない事ですが、最初は嵌ったのでメモ。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


The reCAPTCHA verification period has expired. Please reload the page.

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください