я написал такой код в функции:Undefined смещение: 0 ..., хотя это определено
preg_match_all('/{ali\s+([^}\s]+)\s*}/', $row->text, $matches, PREG_SET_ORDER);
$m=$matches[0][1];
Когда я пишу это:
$row->text=$m;
Он возвращает значение (например, "имя" в "{имя али}" и "идентификатор" в "{али идентификатор}"), но когда я это пишу:
$a->name='hasan';
$a->id='14';
$row->text=$a->$m;
Он говорит:
Notice: Undefined offset: 0 in ... on line 2
В чем проблема ?! Я тестировал существование пробелов, вкладок и т. Д. В строке, но их не было!
Заменить '$ row-> текст = $ а -> $ м;' с '$ row-> текст = $ a-> т;' –
Ну сделать ' print_r ($ matches) ', чтобы увидеть структуру массива, и на основе результата вы затем создадите свой код. Просто. – HamZa
Пожалуйста, переименуйте название. Когда что определено? –