Вычисление в строке типа nowdoc

207
26 июля 2017, 23:22

Подскажите, как можно произвести вычисления в строке типа nowdoc

$v[VAL] = 5;
$v[VAL2] = 2;
echo "{$v[VAL]} -{$v[VAL2]}<br>";

Если я сейчас запущу код то, выведется значение 5 - 2, а мне нужно чтобы произошло арифметическое действие

Answer 1
$v['VAL'] = 5;
$v['VAL2'] = 2;
echo $v['VAL'] - $v['VAL2'];

Пример

Answer 2

В PHP есть 4 вида строк: в двойных кавычках, в одинарных кавычках, heredoc и nowdoc.

Какие либо обработки переменных можно делать в строках в двойных кавычках и в heredoc.

Вы не сможете внутри строки использовать какие либо составные операции. Максимум, на что можно рассчитывать - вызов метода.

Т.е. можно использовать такой финт ушами (только смысл?):

<?php
class A{
    public function stub($a){
        return $a;
    }
}
$a = new A();
$x=2;
$y=3;
echo "{$a->stub($x+$y)}";
Answer 3

У вас немного не правильный код...

$v[VAL] = 5;
$v[VAL2] = 2;
echo "{$v[VAL] - $v[VAL2]}<br>"; //так
//или echo $v[VAL] - $v[VAL2]."<br>";
READ ALSO
Отправка формы без подтверждения

Отправка формы без подтверждения

Есть форма с полями, action'ом, все правильно, мне нужно сделать так, чтоб форма была без кнопки и просто переход по адресу формы означал отправку...

184
Как правильно сделать роутинг в Laravel?

Как правильно сделать роутинг в Laravel?

ЗдравствуйтеПри создании сайта изначально были роуты для категорий и подкатегорий:

235
Сегментация текста

Сегментация текста

Добрый день всем

220
Переставить элементы массива

Переставить элементы массива

Последовательность чисел от 0 до N-1 (N >= 2 - целое) случайным образом перемешали, получив массив A длины NНеобходимо изменить массив так, чтобы...

217