Php 循环中显示错误数据的循环
我有一个按列表分类的PDF文件列表 像这样:Php 循环中显示错误数据的循环,php,loops,pdf,Php,Loops,Pdf,我有一个按列表分类的PDF文件列表 像这样: Terms: PDF1.pdf PDF2.pdf Conditions: PDF1.pdf PDF3.pdf 因此,我首先循环所有类别以显示页面上类别的标题,并在该循环中循环pdf文件URL(仅出于测试目的,最终代码将获得锚定标记等) 问题是我的代码显示了所有标题上的所有pdf文件。不仅仅是属于他们的pdf文件。我做错了什么?每次循环后是否需要清空$attach 我的代码: foreach($manualcr as $mantitle){ i
Terms:
PDF1.pdf
PDF2.pdf
Conditions:
PDF1.pdf
PDF3.pdf
因此,我首先循环所有类别以显示页面上类别的标题,并在该循环中循环pdf文件URL(仅出于测试目的,最终代码将获得锚定标记等)
问题是我的代码显示了所有标题上的所有pdf文件。不仅仅是属于他们的pdf文件。我做错了什么?每次循环后是否需要清空$attach
我的代码:
foreach($manualcr as $mantitle){
if($mantitle['id'] != ''){
$attachoverzicht .= '<h3>'.$mantitle['title'].'</h3>';
foreach($manucr as $attach){
if($attach['id'] != ''){
$attachoverzicht .= '<li>'.$attach['url'].'</li>';
}
}
}
}
echo $attachoverzicht;
以及$manucr
array(4) {
[0]=>
array(26) {
["id"]=>
string(1) "1"
["filename"]=>
string(13) "dummy_pdf.pdf"
["filename_sys"]=>
string(71) "/home/website/public_html/cms/attachments/article/182/dummy_pdf.pdf"
["file_type"]=>
string(15) "application/pdf"
["file_size"]=>
string(5) "16555"
["url"]=>
string(37) "attachments/article/182/dummy_pdf.pdf"
["uri_type"]=>
string(4) "file"
["url_valid"]=>
string(1) "0"
["url_relative"]=>
string(1) "0"
["url_verify"]=>
string(1) "0"
["display_name"]=>
string(9) "Test naam"
["description"]=>
string(0) ""
["icon_filename"]=>
string(7) "pdf.gif"
["access"]=>
string(1) "2"
["state"]=>
string(1) "0"
["user_field_1"]=>
string(0) ""
["user_field_2"]=>
string(0) ""
["user_field_3"]=>
string(0) ""
["parent_type"]=>
string(11) "com_content"
["parent_entity"]=>
string(7) "article"
["parent_id"]=>
string(3) "182"
["created"]=>
string(19) "2017-02-16 13:56:03"
["created_by"]=>
string(3) "360"
["modified"]=>
string(19) "2017-02-16 13:56:03"
["modified_by"]=>
string(3) "360"
["download_count"]=>
string(1) "0"
}
[1]=>
array(26) {
["id"]=>
string(1) "2"
["filename"]=>
string(14) "dummy_pdf1.pdf"
["filename_sys"]=>
string(72) "/home/website/public_html/cms/attachments/article/182/dummy_pdf1.pdf"
["file_type"]=>
string(15) "application/pdf"
["file_size"]=>
string(5) "16555"
["url"]=>
string(38) "attachments/article/182/dummy_pdf1.pdf"
["uri_type"]=>
string(4) "file"
["url_valid"]=>
string(1) "0"
["url_relative"]=>
string(1) "0"
["url_verify"]=>
string(1) "0"
["display_name"]=>
string(0) ""
["description"]=>
string(0) ""
["icon_filename"]=>
string(7) "pdf.gif"
["access"]=>
string(1) "2"
["state"]=>
string(1) "0"
["user_field_1"]=>
string(0) ""
["user_field_2"]=>
string(0) ""
["user_field_3"]=>
string(0) ""
["parent_type"]=>
string(11) "com_content"
["parent_entity"]=>
string(7) "article"
["parent_id"]=>
string(3) "182"
["created"]=>
string(19) "2017-02-16 13:56:39"
["created_by"]=>
string(3) "360"
["modified"]=>
string(19) "2017-02-16 13:56:39"
["modified_by"]=>
string(3) "360"
["download_count"]=>
string(1) "0"
}
[2]=>
array(26) {
["id"]=>
string(1) "3"
["filename"]=>
string(13) "dummy_pdf.pdf"
["filename_sys"]=>
string(71) "/home/website/public_html/cms/attachments/article/181/dummy_pdf.pdf"
["file_type"]=>
string(15) "application/pdf"
["file_size"]=>
string(5) "16555"
["url"]=>
string(37) "attachments/article/181/dummy_pdf.pdf"
["uri_type"]=>
string(4) "file"
["url_valid"]=>
string(1) "0"
["url_relative"]=>
string(1) "0"
["url_verify"]=>
string(1) "0"
["display_name"]=>
string(0) ""
["description"]=>
string(0) ""
["icon_filename"]=>
string(7) "pdf.gif"
["access"]=>
string(1) "2"
["state"]=>
string(1) "0"
["user_field_1"]=>
string(0) ""
["user_field_2"]=>
string(0) ""
["user_field_3"]=>
string(0) ""
["parent_type"]=>
string(11) "com_content"
["parent_entity"]=>
string(7) "article"
["parent_id"]=>
string(3) "181"
["created"]=>
string(19) "2017-02-16 13:56:55"
["created_by"]=>
string(3) "360"
["modified"]=>
string(19) "2017-02-16 13:56:55"
["modified_by"]=>
string(3) "360"
["download_count"]=>
string(1) "0"
}
[3]=>
NULL
}
从您的
var\u dump
输出中,我假设您对应的字段是$mantitle['id']
和$attach['parent\u id']
您必须在第二个循环中检查这一点,例如:
foreach($manualcr as $mantitle){
if($mantitle['id'] != ''){
$attachoverzicht .= '<h3>'.$mantitle['title'].'</h3>';
foreach($manucr as $attach){
if($attach['id'] != '' && $attach['parent_id'] == $mantitle['id']){ // Check for condition added here
$attachoverzicht .= '<li>'.$attach['url'].'</li>';
}
}
}
}
echo $attachoverzicht;
foreach($manualcr作为$mantitle){
如果($mantitle['id']!=''){
$attachoverzicht.='.$mantitle['title'.'”;
foreach($manucr作为$attach){
如果($attach['id']!=''&&$attach['parent_id']==$mantitle['id']){//检查此处添加的条件
$attachoverzicht.='。$attach['url']. ;
}
}
}
}
echo$attachoverzicht;
能否显示var\u dump($manualcr)的输出代码>和变量转储($manucr)代码>?您似乎没有检查您的$manucr
类别与您的$manualcr
类别相同的情况。是的,我会将它们添加到我的问题中@Roberto06您是否至少可以将数据库访问调用更改为mysqli_fetch_assoc()
,或者如果使用PDO::fetch_assoc
进行PDO fetch,则数组中只包含每列数据的一次出现。这将使您的代码内存使用率下降,谢谢,这是非常有意义的。
foreach($manualcr as $mantitle){
if($mantitle['id'] != ''){
$attachoverzicht .= '<h3>'.$mantitle['title'].'</h3>';
foreach($manucr as $attach){
if($attach['id'] != '' && $attach['parent_id'] == $mantitle['id']){ // Check for condition added here
$attachoverzicht .= '<li>'.$attach['url'].'</li>';
}
}
}
}
echo $attachoverzicht;