1

私はこのコードを持っています

<?php
$a1 = 'http://www.hamooz.com';
$a2 = 'http://www.myegy.com';
$a3 = 'http://www.tech-wd.com/wd';
$num = rand(1,3);

$numb =  '$a'.$num;

echo file_get_contents($numb);
?>

問題は次のように表示されます。

警告: file_get_contents($a3) [function.file-get-contents]: ストリームを開くことができませんでした: 9 行目の C:\xampp\htdocs\ttt\bessah.php にそのようなファイルまたはディレクトリはありません

4

3 に答える 3

4

あなたはする必要がありますが$numb = ${'a'.$num};、@Pekkaの答えとして配列ソリューションを使用してください。

于 2012-10-29T09:03:58.443 に答える
3

可変変数は悪い習慣です。代わりに配列を使用してください。

<?php

$a = array();
$a[] = 'http://www.hamooz.com';
$a[] = 'http://www.myegy.com';
$a[] = 'http://www.tech-wd.com/wd';
$num = rand(0,2);

$numb = $a[$num];

echo file_get_contents($numb);
?>

ただし、この特定のタスクには、ショートカットもあります。

array_rand ( )

配列から 1 つ以上のランダムなエントリを選択し、ランダムなエントリのキー (複数可) を返します。

于 2012-10-29T09:00:58.677 に答える
0

コードを複雑にする@Pekkaに同意しますが、絶対に動的変数を使用したい場合は、次のことができます。

<?php
$a1="hello";
$b=1;
echo ${"a$b"};
?>
于 2012-10-29T09:10:01.533 に答える