Перевести js в php

302
09 мая 2022, 15:30

Всем привет! У меня есть массив с объектами (data), также есть функция, которая выводить разметку и элементами из объектов внутри массива. Мне нужно перевести этот js в php, чтобы использовать его внутри как это сделать правильно?

Вот сам js

const data = [
    {
     title: "this title1",
    description: "this description1",
        number: "this number1",
  },
    {
     title: "this title2",
    description: "this description2",
        number: "this number2",
  },
]
    
    function outputGoods(goods) {
     document.getElementById("body").innerHTML = goods
    .map(
      (n) => `
       <div class="wrapper">
          <div> ${n.title}</div>
            <div> ${n.description}</div>
            <div> ${n.number}</div>
      </div>
         
        outputGoods(data)

А вот, что я пробовал:

$data = [
    {
     'title'=>'this title1',
    'description'=> 'this description1',
        'number'=> '12',
  },
    {
      'title'=>'this title2',
    'description'=> 'this description2',
        'number'=> '24',
  },
]
    
    function outputGoods($goods) {
     echo document.getElementById("body").innerHTML = $goods
    .map(
      (n) => `
       <div class="wrapper">
          <div> ${n.title}</div>
            <div> ${n.description}</div>
            <div> ${n.number}</div>
      </div>
         
        outputGoods($data)
?>

но это не работает:(

Answer 1

Как вариант:

<?php
$data = [ 
    [
        'title'=>'this title1',
        'description'=> 'this description1',
        'number'=> '12'
    ],
    [
        'title'=>'this title2',
        'description'=> 'this description2',
        'number'=> '24'
    ]
];
function outputGoods($goods)
{
echo "<div class=\"wrapper\">"
     . array_reduce($goods,
         function ($string, $item)
         {
             $string .= "<div>"
             . $item['title']
             . "</div> <div>" 
             . $item['description']
             . "</div> <div>" 
             . $item['number']
             . "</div>";
             return $string;
         }, "")
     . "</div>";
}
outputGoods($data);
?>
    
READ ALSO
Скрипт заблокирован политикой CORS

Скрипт заблокирован политикой CORS

В расширении для Chrome я пытаюсь загрузить некоторый скрипт с помощью XMLHttpRequest, но получаю следующую ошибку:

259
Vue обработка событий

Vue обработка событий

Не пойму что не такпостараюсь как можно подробнее объяснить

289
долгий ответ от стороннего API

долгий ответ от стороннего API

Я получаю API от сторонних сервисов на PHP, процесс занимает некоторое времяМетод получения API вызывается AJAX запросом из вьюшки

163
Как проверить весь collection в MOngoDb для LogIn

Как проверить весь collection в MOngoDb для LogIn

Как проверить весь collection в MOngoDb для LogIn) Спасибо)

174