передать массив в качестве параметра

#php #smarty

#php #умный

Вопрос:

возможно ли передать массив в качестве параметра в smarty? вот мой код. Спасибо

 {foreach from = $diamond_all key = k item = value}
    <tr class="gradeA" id="diamond_id_">
        <td>{$value.Shape}</td>
        <td>{$value.CaratPerPrice}</td>
        <td>Add Ring</td>
        {$value.ID}">Certificate</a></td>
        <td>{$value.Weight}</td>
        <td>{$value.Cut}</td>
        <td>{$value.Color}</td>
        <td>{$value.Clarity}</td>
        <td>{$value.Price}</td>
        <td> <a class="view_details cboxElement" href="array.php?name=PASS_ARRAY">{$value.ID} View Details</a></td>
    </tr>
{/foreach}
  

Редактировать
У меня есть такой массив в формате php. затем я печатаю этот массив с помощью smarty.

   [0] => Array
    (
        [ID] => 30237638
        [Shape] => Round
        [Weight] => 1.000
        [Cut] => Good
        [Color] => F
        [Clarity] => VS2
        [Price] => 5282.48
        [Company] => 
        [VendorStockNumber] => 92102001
        [Symmetry] => Very Good
        [Polish] => Excellent
        [Depth] => 65.1
        [Table] => 57.00
        [MeasLength] => 6.20
        [MeasWidth] => 6.24
        [MeasDepth] => 4.05
        [GirdleSizeMin] => Slightly Thick
        [GirdleSizeMax] => Thick
        [Culet] => None
        [Fluorescence] => None
        [CaratPerPrice] => 5282.48
        [CertificateNumber] => 2131048944
    )
  

Ответ №1:

Я бы предложил PHP http_build_query . Вы можете сгенерировать ссылку details в PHP и назначить в Smarty (или, если вы будете часто этим заниматься, вы могли бы написать плагин Smarty для выполнения вызова http_build_query . Документация)

PHP:

 $diamond = array(
    'ID' => 30237638,
    'Shape' => 'Round',
    'Weight' => 1.000,
    'Cut' => 'Good',
    'Color' => 'F',
    'Clarity' => 'VS2',
    'Price' => 5282.48,
    'Company' => '',
    'VendorStockNumber' => 92102001,
    'Symmetry' => 'Very Good',
    'Polish' => 'Excellent',
    'Depth' => 65.1,
    'Table' => 57.00,
    'MeasLength' => 6.20,
    'MeasWidth' => 6.24,
    'MeasDepth' => 4.05,
    'GirdleSizeMin' => 'Slightly Thick',
    'GirdleSizeMax' => 'Thick',
    'Culet' => 'None',
    'Fluorescence' => 'None',
    'CaratPerPrice' => 5282.48,
    'CertificateNumber' => 2131048944,
);

$smarty->assign('details_href', 'array.php?' . http_build_query($diamond));

?>
  

Шаблон:

 <a class="view_details cboxElement" href="{$details_href}">{$value.ID} View Details</a>