Php 如何将数组的值显示为字符串或文本而不是索引值
我有两个表1,每个部分都有很多问题,当我回显时,我得到了部分文本,但问题作为索引值0 1 2Php 如何将数组的值显示为字符串或文本而不是索引值,php,Php,我有两个表1,每个部分都有很多问题,当我回显时,我得到了部分文本,但问题作为索引值0 1 2 <?php $result = mysql_query($query); if ($result) { $data = array(); while ($row = mysql_fetch_assoc($result)) { $data[($row['SECTION_NAME'])][][($row['QUES_TEXT'])][] = array(
<?php
$result = mysql_query($query);
if ($result) {
$data = array();
while ($row = mysql_fetch_assoc($result)) {
$data[($row['SECTION_NAME'])][][($row['QUES_TEXT'])][] = array(
'SECTION' => $row['SECTION_NAME'],
'QUESTION' => $row['QUES_TEXT']
);
}
foreach ($data as $SECTION => $QUESTIONS) {
echo '<h2>',htmlentities($SECTION),'</h2>';
foreach ($QUESTIONS as $QUESTIONS_TEXT => $TEXT) {
echo '<h2>',($QUESTIONS_TEXT),'</h2>';
}
}
}
?>
您正在创建额外的嵌套数组,而且不需要这些数组:
$data[$row['SECTION_NAME']][][$row['QUES_TEXT']][] = array(
'SECTION' => $row['SECTION_NAME'],
'QUESTION' => $row['QUES_TEXT']
);
应该是:
if (empty($data[$row['SECTION_NAME']]) {
$data[$row['SECTION_NAME']] = array();
}
$data[$row['SECTION_NAME']][$row['QUES_TEXT']] = array(
'SECTION' => $row['SECTION_NAME'],
'QUESTION' => $row['QUES_TEXT']
);
另外,请参阅对原始问题的评论,这不再是从PHP使用MySQL的安全方法。自PHP v5.5起,
MySQL\uU*
函数已被弃用,并从v7.0起被删除。它们不应用于新代码,应尽快替换为或等效代码;但我得到了数组