Используйте LAST_INSERT_ID()
из вашего SQL-запроса.
Или
Вы также можете использовать mysql_insert_id()
, чтобы получить он использует PHP.
String
класс как другие классы на любом Объектно-ориентированном языке программирования, и мы можем создать объект его с помощью new
ключевое слово как, мы сделали бы для создания объекта любого типа.
В Вашем определенном сценарии выше Вас имеют char
массив и String
, класс имеет перегрузку конструктора, которые берут char[]
в качестве входа и создают String
. Таким образом, Вы вызываете конструктора, использующего new String
.
Поэтому то, что происходит, является Вами, сказал для создания объекта строки типа с помощью char[]
, который обеспечивается в конструкторе ее.
Вы можете - поскольку на любых других из Ваших упомянутых языков - конечно, также используют что-то вроде этого:
string m = "Hello World".
Однако Ваш reversedName
массив char
, который не конвертируем к string
, как. Так следующая работа wonВґt:
string myString = "Hello World".ToCharArray();
, потому что ToCharArray
- поскольку имя предлагает - возвраты char[]
, не string
и thereВґs никакое преобразование между двумя.
ThatВґs, почему необходимо создать новую строку с помощью конструктор, который принимает массив символа .
new
- Ключевое слово используется для создания нового экземпляра класса.
, Если Вы хотите присвоить одно значение одного типа к другому типу, необходимо преобразовать его в некотором роде.
существует несколько путей:
string
, который принимает char[]
) char[]
до string
) string
как далекий я знают) Здесь класс в качестве примера, который реализует явные и неявные броски (Который System.String
не делает):
class MyString
{
private string stringValues;
// Constructors
public MyString(char[] charArray) { stringValues = new string(charArray); }
public MyString(string str) { stringValues = str; }
public MyString() { }
// ToString for writing to console
public override string ToString() { return stringValues; }
// Operator to concat "MyStrings"
public static MyString operator +(MyString a, MyString b) { return new MyString(a.ToString() + a.ToString()); }
// Implicit Cast-operator string to MyString
public static implicit operator MyString(string str) { return new MyString(str); }
// Explicit Cast-operator char-array to MyString
public static explicit operator MyString(char[] str) { return new MyString(str); }
}
internal static void Main(string[] args)
{
MyString tmp = new MyString("Initialize by constructor with parameter string");
Console.WriteLine(tmp);
tmp = new MyString("Initialize by constructor with parameter char-array".ToCharArray());
Console.WriteLine(tmp);
tmp = new MyString("x") + new MyString("+") + new MyString("y");
Console.WriteLine("Use of '+ operator'" + tmp);
tmp = "Initialize by creating string and using implicit cast for strings";
Console.WriteLine(tmp);
tmp = (MyString)("Initialize by creating char-array and using explicit cast for strings".ToCharArray());
Console.WriteLine(tmp);
}