13

I have looked for some responses on the web, but none of them are very accurate.

I want to be able to do this:

$id = "" . $result ["id"] . "";
$info = array('$id','Example');

echo $info[0];

Is this possible in any way?

3 Answers 3

17

What you need is (not recommended):

$info = array("$id",'Example'); // variable interpolation happens in ""

or just

$info = array($id,'Example'); // directly use the variable, no quotes needed

You've enclosed the variable inside single quotes and inside single quotes variable interpolation does not happen and '$id' is treated as a string of length three where the first character is a dollar.

Sign up to request clarification or add additional context in comments.

Comments

5

Just don't put it in quotes:

$id = $result["id"];
$info = array($id, 'Example');
echo $info[0];

Alternatively, if you use double quotes rather than single quotes, then it will be interpolated (which also results in it being converted to a string):

$id = $result["id"];
$info = array("$id", 'Example');
echo $info[0];

Comments

3

Yes, you can store variables within arrays, though you'll need to remove the space between $result and the opening bracket.

$foo = $result["bar"]; // assuming value of 'bar'

$collection = array( $foo, "fizz" );

foreach ( $collection as $item ) {
  // bar, fizz
  echo $item;
}

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.