はじめに
開発中に、PHP と Java の間の相互作用の問題に遭遇することがあります。この 2 つの言語はデータ構造やプログラミング方法が異なり、データ転送における実行方法も異なります。この記事では、PHPのオブジェクト配列をJavaのオブジェクト配列に変換する方法と、Javaのオブジェクト配列をPHPのオブジェクト配列に変換する方法を紹介します。
1. PHP を Java に変換する
PHP では、配列を使用してオブジェクトを格納できます。次の PHP 配列があるとします。
$persons = array( array('name' => 'Tom', 'age' => 20), array('name' => 'Jerry', 'age' => 25), array('name' => 'Lucy', 'age' => 30) );
Java では、最初にこのオブジェクトを表す Java クラスを定義する必要があります。 Person という名前の Java クラスを定義するとします:
public class Person { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
次に、PHP 配列を Java オブジェクトの配列に変換できます:
import java.util.ArrayList; public class Conversion { public static void main(String[] args) { ArrayList<Person> persons = new ArrayList<>(); for (int i = 0; i < args[0].length(); i++) { Person person = new Person(); person.setName(args[0][i]['name']); person.setAge(Integer.parseInt(args[0][i]['age'])); persons.add(person); } } }
上の例では、Java オブジェクトを格納するために ArrayList を使用しました。次に、PHP オブジェクト配列を反復処理し、各オブジェクトを Java オブジェクトに変換し、最後に変換された Java オブジェクトを ArrayList に追加します。
Java オブジェクトの配列の場合、その属性値を使用して PHP オブジェクトを作成し、すべての PHP オブジェクトを変換できます。 PHP 配列に追加します。これは、Java オブジェクトの配列を PHP オブジェクトの配列に変換します。
次の Java オブジェクトの配列があるとします。
Person[] persons = new Person[] { new Person("Tom", 20), new Person("Jerry", 25), new Person("Lucy", 30) };
次のように、Java オブジェクトの配列を PHP オブジェクトの配列に変換できます。
$persons = array(); foreach ($persons as $person) { $personObj = new stdClass(); $personObj->name = $person->getName(); $personObj->age = $person->getAge(); array_push($persons, $personObj); }
上記の例では、たとえば、foreach ループを使用して、Java オブジェクト配列内の各オブジェクトを PHP オブジェクトに変換し、PHP オブジェクトを PHP 配列に追加しました。
2. Java を PHP に変換する
Java では、配列を使用してオブジェクトを格納できます。次の Java オブジェクトの配列があるとします。
Person[] persons = new Person[] { new Person("Tom", 20), new Person("Jerry", 25), new Person("Lucy", 30) };
PHP では、最初にこのオブジェクトを表す PHP クラスを定義する必要があります。 Person という名前の PHP クラスを定義するとします:
class Person { public $name; public $age; public function __construct($name, $age) { $this->name = $name; $this->age = $age; } }
次に、Java オブジェクト配列を PHP オブジェクト配列に変換できます:
$persons = array(); foreach ($persons as $person) { $personObj = new Person($person->getName(), $person->getAge()); array_push($persons, $personObj); }
上の例では、foreach ループがそれぞれを変換します。 Java オブジェクト配列内のオブジェクトを PHP オブジェクトに変換し、PHP オブジェクトを PHP 配列に追加します。
PHP オブジェクトの配列の場合、その属性値を使用して Java オブジェクトを作成し、すべての Java オブジェクトを変換できます。 Java 配列に追加すると、PHP オブジェクトの配列が Java オブジェクトの配列に変換されます。
次のような PHP オブジェクトの配列があるとします。
$persons = array( array('name' => 'Tom', 'age' => 20), array('name' => 'Jerry', 'age' => 25), array('name' => 'Lucy', 'age' => 30) );
Java では、最初にこのオブジェクトを表す Java クラスを定義する必要があります。 Person という名前の Java クラスを定義するとします:
public class Person { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
次に、PHP オブジェクト配列を Java オブジェクト配列に変換できます:
import java.util.ArrayList; public class Conversion { public static void main(String[] args) { ArrayList<Person> persons = new ArrayList<>(); for (int i = 0; i < args[0].length(); i++) { Map<String, Object> personMap = args[0][i]; Person person = new Person(); person.setName((String) personMap.get("name")); person.setAge((Integer) personMap.get("age")); persons.add(person); } } }
上記の例では、ArrayList を使用して Java オブジェクトを格納しました次に、PHP オブジェクト配列を反復処理し、各オブジェクトを Java オブジェクトに変換し、最後に変換された Java オブジェクトを ArrayList に追加します。
結論
この記事では、PHP のオブジェクト配列を Java のオブジェクト配列に変換する方法と、Java のオブジェクト配列を PHP のオブジェクト配列に変換する方法を紹介します。開発者の作業や学習にとって非常に参考になる価値があります。 PHP と Java の間の対話の場合でも、他のデータ構造の変換に直面している場合でも、これらのメソッドから学び、より効率的かつ正確な方法でコード開発を完了できます。
以上がJavaオブジェクト配列をPHPオブジェクト配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。