благодаря людям, которые ответили на мой последний вопрос
я продолжаю получать эту ошибку: имя функции должно быть строкой в /home/pulsergf/public_html/these/vars.php в строке 4
<? $array = array('555', '666', 'aaa', 'bbb', '777', '888'); $rand_index = mt_rand(0, count($array) / 2 - 1) * 2; $define('BOUGHT','echo "$array[$rand_index]";'); $define('SOLD','echo "$array[$rand_index+1]";'); ?>
поэтому ему нужно выбрать пару в массиве для BOUGHT и SOLD, но я продолжаю получать эту ошибку. благодаря
используйте define вместо $define
$define() указывает на функцию переменной , что означает, что она принимает строковое значение $define и пытается вызвать функцию с тем же именем, что и эта строка.
Вам не нужно $ перед define .
Зачем?
Когда вы предшествуете define с $ за которым следует несколько параметров внутри (...) , он интерпретируется как переменная . Поскольку переменная $define не определена, она становится эффективной эквивалентной вызову функции без имени функции.