非常感谢您阅读我的问题。 因此,我手中只有一个文本区域,可以提交到表中的单个列。
假设我仅在1行中发送此值:
<first_name>Sophia</first_name><last_name>Aba</last_name>
<first_name>Ana</first_name><last_name>Bush</last_name>
提交后,将转到“贡献者”列。
现在我想从数据库中获取该值并像这样将它们分开:
<?php
$get = $connect->query("SELECT * FROM articles WHERE id= '1' ");
$fetch = $get->fetch_array(MYSQLI_ASSOC);
$contributors = $fetch['contributors'];
但是现在我如何才能分隔该条目,使php在标签内获取名称并检测有多少,这样我就可以将thoose放入单独的变量中,如:
<?php
$count = "HERE COUNT FOR HOW MUCH FIRST_NAME THERE IS "
for($i = 0; i >= $count; $i++){
$array = ("a","b","c");
$first_name_$array[$i] = "HERE THE VARIABLE THAT GETS THE FIRST_NAME TAG OF THE FIRST"; // I know this is incorrect way of incrementing a variable name that's why im also asking for help
}
答案 0 :(得分:0)
采用其他方式
首先,我建议首先以不同的方式存储数据。保存XML,然后将其从数据库中读取后再从中提取数据,这只是一种非常复杂的方法(如您所见,您会看到有关如何做的问题)。另请参见Database normalization。
如果您绝对必须采用这种方式
我建议为此使用PHP的SimpleXML,
<?php
$contributors =
"<contributors>
<contributor>
<first_name>Sophia</first_name>
<last_name>Aba</last_name>
</contributor>
<contributor>
<first_name>Ana</first_name>
<last_name>Bush</last_name>
</contributor>
</contributors>";
$xmlContributors = new SimpleXMLElement($contributors);
foreach ($xmlContributors->children() as $contributor) {
echo 'This is one contributor: ' . $contributor->first_name . ' ' . $contributor->last_name . PHP_EOL;
}
但是,请注意,您必须更改XML结构才能完全具有合理的XML构建(如上所示)。