मैं PHP में सहयोगी सरणी पर काम कर रहा था। यहां मैंने एक बहु सहयोगी सरणी बनाई है। मैं अपने सरणी को सारणीबद्ध रूप में दिखाना चाहता हूं। सरणी है

<?php

$schoolDetails = array(
    //First School Details
    array(
        
        array("schoolName" => "TCS"),


        array(
            "branchName"       => "Iqbal Campus",
            "phone"            => "052-4667281",
            "numberofTeachers" => 51
        ),

        array(
            "departmentName" => "Maths",
            "HOD"            => "Mr Ali"
        ),
        array(
            "departmentName" => "Science",
            "HOD"            => "Mr Imran"
        )

    ),
    array(

        array("schoolName" => "CSS"),
        array(
            "branchName"       => "Gohdpur Campus",
            "phone"            => "052-4667281",
            "numberofTeachers" => 20
        ),
        array(
            "departmentName" => "Chemistry",
            "HOD"            => "Mr Abdullah"
        ),
        array(
            "departmentName" => "Computer",
            "HOD"            => "Mr Naeem"
        )

    ),

);

जिस तरह से मैंने डेटा प्रदर्शित करने का प्रयास किया वह नीचे है:

  <table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
                                        <thead>
                                            <tr>
                                                <th>School Name</th>
                                                <th>Branch Name</th>
                                                <th>Phone Number</th>
                                                <th>Number of Teachers</th>
                                                <th>Department Name</th>
                                                <th>HOD</th>
                                            </tr>
                                        </thead>
                                        <tfoot>
                                            <tr>
                                            <th>School Name</th>
                                                <th>Branch Name</th>
                                                <th>Phone Number</th>
                                                <th>Number of Teachers</th>
                                                <th>Department Name</th>
                                                <th>HOD</th>
                                            </tr>
                                        </tfoot>
                                        <tbody>
                                            <?php  foreach ($schoolDetails as $school) {
                                                    foreach ($school as $schools) {
                                                        foreach ($schools as $key => $value) {?>
                                            <tr>
                                                            <td><?php echo $value; ?></td>
                                            </tr>
                                            <?php }}}?>

        
                                        </tbody>
                                    </table>

लेकिन मुझे उचित पंक्तियों और स्तंभों में परिणाम नहीं मिलता है। तो मैं इसे एक सटीक सारणीबद्ध रूप में प्रदर्शित करने के लिए क्या करूं क्योंकि मैं इस तरह के कार्य से कभी नहीं गुजरा हूं।

0
Bilal Ahmed 24 सितंबर 2020, 16:06

3 जवाब

सबसे बढ़िया उत्तर
foreach($schoolDetails as $schoolDetail) {
    echo "<tr>";
    echo "<td>{$schoolDetail[0]["schoolName"]}</td>";
    echo "<td>{$schoolDetail[1]["branchName"]}</td>";
    echo "<td>{$schoolDetail[1]["phone"]}</td>";
    echo "<td>{$schoolDetail[1]["numberofTeachers"]}</td>";

    if(!empty($schoolDetail[3]['departmentName'])) {

        echo "<td>{$schoolDetail[2]["departmentName"]}" . ", " . "{$schoolDetail[3]["departmentName"]}</td>"; 

    } else {

        echo "<td>{$schoolDetail[2]["departmentName"]}</td>";

    }

    if(!empty($schoolDetail[3]['HOD'])) {

        echo "<td>{$schoolDetail[2]["HOD"]}" . ", " . "{$schoolDetail[3]["HOD"]}</td>"; 

    } else {

        echo "<td>{$schoolDetail[2]["HOD"]}</td>"; 
    
    }

    echo "</tr>";
}
0
Jerson 24 सितंबर 2020, 16:57

@Gowire उत्तर सिर्फ संशोधित है।

 foreach ($schoolDetails as $school) {
     echo "<tr>";
     echo "<td>{$school[0]["schoolName"]}</td>";
     echo "<td>{$school[1]["branchName"]}</td>";
     echo "<td>{$school[1]["phone"]}</td>";
     echo "<td>{$school[1]["numberofTeachers"]}</td>";
     echo "<td>{$school[2]["departmentName"]}</td>";
     echo "<td>{$school[2]["HOD"]}</td>"; 
     echo "</tr>";
     for($i=3;$i<=5;$i++){
        if(isset($school[$i])){
             echo "<tr>";
             echo "<td></td>";
             echo "<td></td>";
             echo "<td></td>";
             echo "<td></td>";
             echo "<td>{$school[$i]["departmentName"]}</td>";
             echo "<td>{$school[$i]["HOD"]}</td>"; 
             echo "</tr>"; 
        }
     }
 }
0
Ashok 24 सितंबर 2020, 16:49

सबसे पहले, आप नए कॉलम के बजाय नई पंक्तियों में मान जोड़ने लगते हैं:

<tr>
    <td><?php echo $value; ?></td>
</tr>

<tr>टैग नई तालिका पंक्तियाँ जोड़ता है। उन्हें अंतिम लूप के बाहर जोड़ा जाना चाहिए।

अगला मुद्दा यह है कि आपके पास टेबल कॉलम की तुलना में प्रत्येक स्कूल के लिए अधिक मूल्य हैं। आपके पास प्रत्येक स्कूल के लिए एक से अधिक विभाग हैं। इसे तालिका में कैसे प्रदर्शित किया जाना चाहिए?

<?php
 foreach ($schoolDetails as $school) {
     echo "<tr>";
     echo "<td>{$school[0]["Schoolname"]}</td>";
     echo "<td>{$school[1]["branchName"]}</td>";
     echo "<td>{$school[1]["phone"]}</td>";
     echo "<td>{$school[1]["numberofTeachers"]}</td>";
     echo "<td>{$school[2]["departmentName"]}</td>";
     echo "<td>{$school[2]["HOD"]}</td>"; 
     echo "</tr>";
 }

हालांकि, उपरोक्त कोड केवल पहले विभाग को सूचीबद्ध करेगा... आपको बाकी को कैसे प्रदर्शित किया जाए, इस बारे में अधिक जानकारी प्रदान करने की आवश्यकता है...

0
Gowire 24 सितंबर 2020, 16:23