2015-01-19 4 views
-2

У меня есть следующие переменные PHP в моем коде:PHP математики с переменными

$masonry_item_width; 
$masonry_item_padding; 

Я пытаюсь создать значение для новой переменной, делая SOE математикой с этими двумя. Вот что я написал:

$skizzar_double_width_size = eval(
    'return'.($masonry_item_width*2)+$masonry_item_padding.';' 
); 

Однако, это ничего не возвращает, когда эхо из $skizzar_double_width_size

Я никогда не делали математику с PHP переменных раньше, там что-то я делаю не так очевидно?

+3

Пожалуйста, для любви к Богу, не используйте eval. –

+1

@Bulk более чем счастлив не ... особенно если вы предлагаете другой способ –

+2

Да, вы используете eval для выполнения основной математики. '$ foo = $ bar + $ baz' будет работать так же хорошо. Вы делаете ** НЕ ** нуждаетесь в eval за то, что вы пытаетесь. Пожалуйста, забудьте, что eval() существует. Это злая функция, и ее НИКОГДА не следует использовать. –

ответ

2

Попробуйте просто с этим:

$skizzar_double_width_size = $masonry_item_width*2 +$masonry_item_padding; 

Чтобы повторить его в HTML просто написать:

echo $skizzar_double_width_size; 

И да, это так просто! :)

+0

Я думал, что это просто так, как я могу повторить это в html? –

+0

@SamSkirrow Просто выполните что-то вроде этого: '' Или равно этому: ' ' – Rizier123

0

Вы не должны использовать eval() просто использовать это:

echo $skizzar_double_width_size = $masonry_item_width * 2 + $masonry_item_padding; 

КСТАТИ: eval() === evil(), я никогда не видел такую ​​ситуацию, когда вам нужно eval() это только делает вас проблемы

Смежные вопросы