একটি অ্যারের পিএইচপিপি মাধ্যমে লুপ


109

আমার এই অ্যারে আছে ... আপনি ফাইলপথ এবং ফাইলের প্রত্যেকটি কীভাবে মুদ্রণ করবেন? এই কাজ করতে সবচেয়ে ভালো উপায় কি?

  Array ( 
    [0] => Array ( 
             [fid] => 14 
             [list] => 1 
             [data] => Array ( 
                         [alt] => 
                         [title] => 
                       )
             [uid] => 1 
             [filename] => trucks_10785.jpg 
             [filepath] => sites/default/files/trucks_10785.jpg 
             [filemime] => image/jpeg 
             [filesize] => 143648 
             [status] => 1 
             [timestamp] => 1291424171 
             [nid] => 8 
           ) 
    [1] => Array ( 
             [fid] => 19 
             [list] => 1 
             [data] => Array ( 
                         [alt] => 
                         [title] => 
                       ) 
             [uid] => 1 
             [filename] => school.jpg 
             [filepath] => sites/default/files/school.jpg 
             [filemime] => image/jpeg 
             [filesize] => 115355 
             [status] => 1 
             [timestamp] => 1292029563 
             [nid] => 8 
           ) 
    [2] => Array ( 
             [fid] => 20 
             [list] => 1 
             [data] => Array ( 
                         [alt] => 
                         [title] => 
                       )     
             [uid] => 1 
             [filename] => Life_is_wonderful_by_iNeedChemicalX.jpg 
             [filepath] => sites/default/files/Life_is_wonderful_by_iNeedChemicalX_0.jpg 
             [filemime] => image/jpeg 
             [filesize] => 82580 
             [status] => 1 
             [timestamp] => 1292029572 
             [nid] => 8 
           )
    [3] => Array ( 
             [fid] => 21 
             [list] => 1 
             [data] => Array ( 
                         [alt] => 
                         [title] => 
                       ) 
             [uid] => 1 
             [filename] => school_rural.jpg 
             [filepath] => sites/default/files/school_rural.jpg 
             [filemime] => image/jpeg 
             [filesize] => 375088 
             [status] => 1 
             [timestamp] => 1292029582 
             [nid] => 8 
           ) 
  ) 

foreach ($ নোড-> ক্ষেত্র_চিত্র হিসাবে & $ মান) {মুদ্রণ_আর ($ মান); প্রতিধ্বনি "<br/> <ঘন্টা />"; }
এসফওয়ান

উত্তর:


259

foreachকী ছাড়াই লুপ ব্যবহার করা হচ্ছে

foreach($array as $item) {
    echo $item['filename'];
    echo $item['filepath'];

    // to know what's in $item
    echo '<pre>'; var_dump($item);
}

foreachকী সহ লুপ ব্যবহার করা

foreach($array as $i => $item) {
    echo $item[$i]['filename'];
    echo $item[$i]['filepath'];

    // $array[$i] is same as $item
}

forলুপ ব্যবহার করে

for ($i = 0; $i < count($array); $i++) {
    echo $array[$i]['filename'];
    echo $array[$i]['filepath'];
}

var_dump একটি অ্যারের বা অবজেক্টের স্ন্যাপশট পেতে সত্যিই দরকারী ফাংশন।


3
এছাড়াও চেকআউট var_export, যা বৈধ পিএইচপি কোড মুদ্রণ করে। আপনি এটি কোনও ফাইলে সংরক্ষণ করতে পারেন, তারপরে আপনার মূল কোডে রাখার আগে কোডটি এতে লুপ করার জন্য লিখুন।
বেন

লুপ পদ্ধতিটি এখানে ব্যবহার করে এখানে সমস্যা here আমি কোথাও পড়েছি যে সূচকের অস্তিত্ব থাকতে পারে ??
বাকালোলো

1
সূচক মত সংজ্ঞায়িত করা না থাকলে ['a', 'b', 'c'], তারপর এটি এর মান 0,1 এবং 2. হয়
ইশ

11

ঠিক আছে, আমি জানি একটি গ্রহণযোগ্য উত্তর আছে তবে… আরও বিশেষ ক্ষেত্রে আপনি এটি ব্যবহার করতে পারেন:

array_map(function($n) { echo $n['filename']; echo $n['filepath'];},$array);

বা আরও জটিল পদ্ধতিতে:

function printItem($n){
    echo $n['filename'];
    echo $n['filepath'];
}

array_map('printItem', $array);

এটি আপনাকে একটি সহজ উপায়ে ডেটা ম্যানিপুলেট করার অনুমতি দেবে।


6

কোনও HTML ছাড়াই সহজ শুরু হচ্ছে:

foreach($database as $file) {
    echo $file['filename'] . ' at ' . $file['filepath'];
}

এবং আপনি অন্যথায় পূর্ববর্তী ক্ষেত্রগুলিতে হেরফের করতে পারেন।


2
foreach($array as $item=>$values){
     echo $values->filepath;
    }

3
আট বছরের পুরানো প্রশ্নের উত্তর দেওয়ার সাথে সাথে আরও তিনটি বিদ্যমান উত্তর দিয়ে উত্তর দেওয়া আপনার উত্তরটি প্রশ্নে কী নতুন দৃষ্টিভঙ্গি নিয়ে আসে তা ব্যাখ্যা করা কার্যকর। এছাড়াও এই ক্ষেত্রে প্রশ্নটি ছিল "ফাইলপথ এবং ফাইলের প্রত্যেকটি" মুদ্রণ না করে কেবল ফাইলপথটি প্রিন্ট করতে হবে।
জেসন অ্যালার

1
এটি প্রতিধ্বনিত হবে cho মানগুলি ['ফাইলপথ']; কারণ হিসাবে মানগুলি একটি অ্যারে হয়, কোনও বস্তু নয়।
ড্যানিয়েল ফিউয়ার

-1

আপনি অতিরিক্ত ভেরিয়েবল তৈরি না করে বা ফোরচ () এর মতো মেমরিতে ডেটা অনুলিপি না করে এটিও ব্যবহার করতে পারেন।

while (false !== (list($item, $values) = each($array)))
{
    ...
}

2
প্রতিটি ফাংশন পিএইচপি 7.2.0 হিসাবে অবচিত করা হয়েছে। "এই ফাংশনটির উপর নির্ভর করা অত্যন্ত নিরুৎসাহিত" php.net/manual/en/function.each.php
asiop
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.