arraylist — конвертировать код из Java в формат PHP.

Я новичок в использовании PHP. Я пытаюсь преобразовать код Java в PHP, но с небольшим успехом. особенно объявление типа переменной long, а также объявление объекта класса в виде массива.

public class Company extends User implements Serializable {

private static final long serialVersionUID = 8598447488057067508L;

public String id;
public String companyName;
public String companyCode;
public String avatar;

public Price price;
public List<History> history;
public List<Wall> wallpost;

public boolean isFollowing;

public String toString() {
return "Company [id=" + id
+ ", companyName=" + companyName
+ ", companyCode=" + companyCode
+ ", avatar=" + avatar + "]";
}
}

В PHP

 <?php

include "History.php";
include "Price.php";
include "Wall.php";

class Company extends User implements Serializable {

private static final  long $serialVersionUID = 8598447488057067508L;// get error here

public $id;
public $companyName;
public $companyCode;
public $avatar;

public Price $price;//object of Price Class how to declare this?
public List<History> $history;//object of History Class how to declare this as a List?
public List<Wall> $wallpost;//object of Wall Class how to declare this as a list?

public boolean $isFollowing; //how to assign boolean to this variable?
}

Я полагаю, что это может быть способ привести это в PHP.

Спасибо за помощь.

1

Решение

Просто определите их как массивы, вы не можете определить тип:

<?php

include "History.php";
include "Price.php";
include "Wall.php";

class Company extends User implements Serializable {

// Define as constant, include value in quotes
const serialVersionUID = "8598447488057067508L";

public $id;
public $companyName;
public $companyCode;
public $avatar;

public $price;
public $history = array();
public $wall = array();

public $isFollowing;

public function __construct()
{
// Set price
$price_obj = new Price();
array_push($this->price, $price_obj);

// Set history
$history_obj = new History();
array_push($this->history, $history_obj);

// Set wall
$wall_obj = new Wall();
array_push($this->wall, $wall_obj);

// Assign boolean
$this->isFollowing = true;

}
}

Вы можете поместить любой тип объекта в переменные / массивы.

final Ключевое слово может быть использовано только на classДа, но вы можете определить его как константу.

Вероятно, это странная концепция перехода от строго типизированного языка к слабо типизированному …

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]