Quiero agregar variables en una cadena en php. Busqué en Google y encontré el método de: "{$a}". Sin embargo, esto no funciona para mí. Lo hice eco y literalmente ha hecho eco de "{$a}" en lugar del valor real de la variable. Aquí está mi código:
$body= json_decode( '{ "sender_batch_header": { "email_subject": "SDK payouts test txn" }, "items": [ { "recipient_type": "EMAIL", "receiver": "{$email}", "note": "Your 1$ payout", "sender_item_id": "Test_txn_12", "amount": { "currency": "CHF", "value": "{$actualAmount}" } }] }', true);Y aquí está el eco de $cuerpo:
{ "sender_batch_header": { "email_subject": "SDK payouts test txn" }, "items": [ { "recipient_type": "EMAIL", "receiver": "{$email}", "note": "Your 1 $ pago", "sender_item_id": "Test_txn_12", "cantidad": { "moneda": "CHF", "valor": "{$cantidad real}" } }] }
Las variables de las que estoy hablando son $email y $actualAmount. Lo depuré y ambos tienen un valor que simplemente no se agrega a la cadena. ¿Alguien puede ayudar?
Un literal de cadena puede ser de diferentes maneras:
Puede usar llaves en cadenas entre comillas dobles como: "Hello {$foo}" desafortunadamente, su variable de cadena está entre comillas simples. Entonces podemos usar el operador de concatenación ('.'), que devuelve la concatenación de sus argumentos derecho e izquierdo.
Así que probemos con el operador de concatenación;
$body= json_decode( '{ "sender_batch_header": { "email_subject": "SDK payouts test txn" }, "items": [ { "recipient_type": "EMAIL", "receiver": "'.$email.'", "note": "Your 1$ payout", "sender_item_id": "Test_txn_12", "amount": { "currency": "CHF", "value": "'.$actualAmount.'" } }] }', true);