4

I'm adding data to a stdClass object that is going to be sent through a 3rd party API and so the names I am giving to the elements of this object are actually being defined by that external service.

$insertArray = array();
$insertArray[0] = new stdclass();
$insertArray[0]->Name = $name;
$insertArray[0]->PhoneNumber = $phone;

This was all working wonderfully until I came across a property with an invalid name:

$insertArray[0]->First.Name = $firstname;

So that isn't valid PHP syntax, so is there a way around this?

Rizier123
  • 58,877
  • 16
  • 101
  • 156
AdamJones
  • 652
  • 1
  • 15
  • 38

1 Answers1

6

Thanks to the comments (@AbraCadaver), Complex (curly) syntax is the way to go for invalid variables or property names:

$insertArray[0]->{"First.Name"} = $firstname;
Rizier123
  • 58,877
  • 16
  • 101
  • 156
AdamJones
  • 652
  • 1
  • 15
  • 38