Аргумент оператора PHP If в Laravel - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть вычисление, в котором переменная $totalPercent может быть 0. Для этого случая я добавил несколько операторов if в сценарий, чтобы они выполнялись только после того, как инициал возвратился с ошибкой при делении на ноль в некоторых случаях.

Это был недавно пересмотренный расчет, который теперь работает, когда $totalPercent равен 0, но когда он имеет значение и вызывается предполагаемый скрипт, он вернул мне ошибку Undefined variable: designPercent. * 1006.*

Вот новый скрипт с добавленным оператором if, который должен был выполнять вычисления, только если $totalPercent больше 0.

@if ($totalnumerical > '0')
    $totalPercent= '100' / $totalnumerical;
    $stylePercent= ($styletempt *  $totalPercent).'%';
    $designPercent= ($designtempt * $totalPercent).'%';
    $managePercent= ($managetempt * $totalPercent).'%';
    <div class="graphSection">
        <div class="skillGraph">
            <span style="width:{{$designPercent}}" class="bar-1"></span>
            <span style="width:{{$stylePercent}}" class="bar-2"></span>
            <span style="width:{{$managePercent}}" class="bar-3"></span>
        </div><br>
        <div class="skillGraph graph_text">
            @if(($designtempt * $totalPercent) > 15)
                <span style="width:{{$designPercent}}" >Design</span>
            @else
                <span class="hovertext" style="width:{{$designPercent}}; margin-top:-57px" >Design</span>
                <span style="width:{{$designPercent}}" ></span>
            @endif
            @if(($styletempt * $totalPercent) > 15)
                <span style="width:{{$stylePercent}}" >Interior Styling</span>
            @else
                <span class="hovertext" style="width:{{$stylePercent}}; margin-top:-67px;" >Interior Styling</span>
                <span style="width:{{$stylePercent}}" ></span>
            @endif
            <span style="width:{{$managePercent}}" >Project Management</span>
        </div>
    </div>
@endif

1 Ответ

0 голосов
/ 28 ноября 2018

Все в виде лезвия интерпретируется как текст, а не код.Если вы хотите добавить php-код на ваш взгляд, вы должны поместить этот код в @php блоков .

@if ($totalnumerical > '0')
    @php
        $totalPercent= '100' / $totalnumerical;
        $stylePercent= ($styletempt *  $totalPercent).'%';
        $designPercent= ($designtempt * $totalPercent).'%';
        $managePercent= ($managetempt * $totalPercent).'%';
    @endphp
    <div class="graphSection">
        <div class="skillGraph">
            <span style="width:{{$designPercent}}" class="bar-1"></span>
            <span style="width:{{$stylePercent}}" class="bar-2"></span>
            <span style="width:{{$managePercent}}" class="bar-3"></span>
        </div><br>
        <div class="skillGraph graph_text">
            @if(($designtempt * $totalPercent) > 15)
                <span style="width:{{$designPercent}}" >Design</span>
            @else
                <span class="hovertext" style="width:{{$designPercent}}; margin-top:-57px" >Design</span>
                <span style="width:{{$designPercent}}" ></span>
            @endif
            @if(($styletempt * $totalPercent) > 15)
                <span style="width:{{$stylePercent}}" >Interior Styling</span>
            @else
                <span class="hovertext" style="width:{{$stylePercent}}; margin-top:-67px;" >Interior Styling</span>
                <span style="width:{{$stylePercent}}" ></span>
            @endif
            <span style="width:{{$managePercent}}" >Project Management</span>
        </div>
    </div>
@endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...