私はお詫びしますが、私はいくつかのPHPを手に取りましたが、これまで何も深刻なことはしていません。配列宣言内でクラスをインスタンス化する
基本的に、私はこのようなものがあります:私は何をしたいか
class MyClass
{
function _construct($var1, $var2)
{
//property assignments
}
}
function doStuff($array)
{
//do stuff to $array
}
$myArray = array();
$myVar1 = "foo";
$myVar2 = "bar";
$myVar3 = "test"
$myVar4 = "aaaaa"
//etc...
はMyClass
のインスタンスを作成し、$myArray
にそれを格納しています。
$classInstance = new MyClass($myVar1, $myVar2);
$myArray[] = $classInstance
$anotherInstance = new MyClass($myVar3, $myVar4);
$myArray[] = $anotherInstance
//etc...
このプロセスは、複数回(ループなしで)実行されます。私はこれを複数回行ってたら、私は以下のことになるだろう。
doStuff($myArray);
この関数の内部、私はこれが退屈になるだろうなど、foreach
とをループされます。私が知りたいことは、私は(これは適切な構文ではないことを知っています)何かをすることができるいくつかの方法があります。ありがとう!
を '$ myarrayのは[] =新しいMyClassの($ myVar1、$ myVar2);'完全に有効です:あなたがしたいとあなたは正確に行うことができます。 –
なぜ '$ myArray [] = new MyClass($ myVar1、$ myVar2);'が適切な構文ではありませんか? – xdazz
ああ、ありがとう。私はそれが正しい構文であることを知らなかった。 –