ヤッチマイナシコ

たまには気分を変えよう

ナシコ

7/24

引数の参照渡し - PHP

基本的な事なんだと思うけど参照渡しができるとは知らんかった。
引数に&引数名と指定するだけだった。ちなみに変数でも使えるようです。

$a = 10;
hoge($a);
function hoge(&$item){
  $item = 20;
}
echo $a;



簡単に言うと参照渡しは引数に変数そのものを渡している感じで、&を付加しない場合の値渡しは変数にセットした値のみを引数に渡していると考えるとよいかもしれません。
詳しくは他のサイトを参考にしてください。

上記のコードの実行結果は20となります。


なぜこれに辿り着いたかというと、あるデータのチェック処理を行っていたんです。
例ですが以下のようなコードです。
$ary = array();
$ary["name"] = "nashiko";
$ary["url"] = "nashiko.net";

if(isset($ary["blog"])){
  echo "aru";
}
else{
  echo "nai";
}


これの結果はnaiと表示されるはずです。
ちなみにissetは変数がセットされているか確認できる関数です。
どうせならと思いisset以外の処理も一気にチェックできるような共通関数を作ろうとしたときに困った事になったんです。

<?php
$ary = array();
$ary["name"] = "nashiko";
$ary["url"] = "nashiko.net";

echo isDefErr($ary["blog"]);

function isDefErr($str){
  if( ! isset($str) ){
    return "エラー1番目";
  }

  if( $str == "" ){
    return "エラー2番目";
  }
  
  return "エラーなし";
}
?>


分かりやすくreturnで文字列を返してます。

このコードを実行させると6行目でNoticeが表示されます。引数に存在しない$ary["blog"]のデータを渡そうとしているからです。よくよく考えればあたりまえの事です。
そこで参照渡しの出番です。
引数の$str&$strに変更し実行すればNoticeがでなくなります。

たったこれだけの事だったんですが、なかなか思いつかなくハマってしまいました。


echo isDefErr($ary["blog"]);
の前に
$ary["blog"] = "ヤッチマイナシコ";
を追加すれば「エラーなし」と表示されます。

<?php
$ary = array();
$ary["name"] = "nashiko";
$ary["url"] = "nashiko.net";
$ary["blog"] = "ヤッチマイナシコ";

echo isDefErr(&$ary["blog"]);

function isDefErr($str){
  if( !isset($str) ){
    return "エラー1番目";
  }

  if( $str == "" ){
    return "エラー2番目";
  }
  
  return "エラーなし";
}
?>

2009/7/24 - 1:03 | Comments (0)

Category : PHP

7/21

講師・TA講評会

デジハリで開催された講師・TA講評会に参加してきてきました。
僕はどっちでもないんですけど講師の方の保護者という形で参加しました。保護者は冗談ですが、MIROPETAを一緒に制作したSEZAKIさんの相方ってとこでしょうか。

内容は「アッシ最近こんなことやってまっせー!」的な感じです。
大勢の集まりに参加したことが殆ど無かったので、どんなもんなんだろうと思ってましたが
こりゃーイイです!
ジャンル的にはデジタル系で似たり寄ったりなんですが、内容を聞いてるとやっぱ火が付きますね〜。

それよか刺激的だったのは人との出会いですね。会話っていいよ!
気さくに話してくださる方も多くて凄く安心しました。SEZAKIさんが僕の事をチラホラと話題に挙げてくれるおかげですね。


未だに何であんな事言ったんだろうって反省してる事があるんです?。
SEZAKIさんが「MIROPETAのコンセプトってなんでしたっけ?」という制作者なら答えれるよねっ!と思われる最高のパスに「なんとなく」という誤回答をしてもーた?。

目を合わせて沈黙ですよ。
そりゃ困るわな。若干笑いがあったので良かったですが?。


そんなこんなで笑いありで刺激的な講評会は最高でした。またあるといいなー。

2009/7/21 - 2:30 | Comments (2)

Category : nashiko駄文

7/13

トランスフォーマーリベンジ

ストーリーはさておき相変わらずCGがすごいです。戦闘中に変形するときが特にグッ!っときました。細かい部分まで作り込まれてて違和感が少ないです。
さらに音響効果が加わって迫力アップ!映画館で見る価値がありました。
ごちゃごちゃしてるのは仕方ないのかなー。いつも見ている位置からはちょいと不満が残ったので少し遠目で見たかったかな。
おちゃめな部分もあって笑いがあったのがよかった。
娯楽にはもってこいだと思います。

ジョシュ・デュアメルの軍服は似合ってますけど、やっぱりラスベガスのおちゃらけた感じが頭から抜けないっす><

トランスフォーマー スペシャル・コレクターズ・エディション (2枚組) [Blu-ray]

この商品の詳細を見る(AMAZON)

2009/7/13 - 0:41 | Comments (0)

Category : 映画

7/7

引越し完了

色々とずさんすぎる対応に飽きれる毎日です。

「管理会社の者です。」とかいうからオートロック開けたらどっかの新聞社の人だったよ。

疲れるわ。

2009/7/7 - 0:18 | Comments (2)

Category : nashiko駄文

CopyRight 2004 ヤッチマイナシコー! All rights reserved.

Powerd By neustil.com