人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで次のスクリプトを作成してください。

下記のような配列があるとします。
$i = array('a','b','c');

この配列の要素に$をつけた変数をユーザー定義関数の中でグローバルにさせる方法を教えてください。つまり下記のような形を実現したいです。
function hoge(){
global $a;
global $b;
global $c;
}

ただし、配列の要素が増減したら関数の中でグローバル化される変数も自動的に増減するようにしてください。

Vista、IE、Firefox、最新のXampp、PHP5、 EclipsePDT2を使ってます。
以上よろしくお願いします。

●質問者: taroemon
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:firefox hoge IE PHP VISTA
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● y-kawaz
●60ポイント ベストアンサー
<?php
error_reporting(E_ALL ^ E_NOTICE);

$a = "A";
$b = "B";
$c = "C";
$d = "D";
$i = array("a", "b", "c");

function hoge() {
 global $i;
 foreach($i as $v) {
 global $$v;
 }
 echo "$a,$b,$c,$d,";
}

hoge();

//↓出力結果
//A,B,C,,
?>

$i で指定された $a,$b,$c だけが global された状態になり、global されていない $d は未定義になっているのが分かるかと。

◎質問者からの返答

ご回答ありがとうございます。

うまくいきました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ