শুধু একটি অ্যাডেটিভ।
আমি জানি এটি পুরানো , তবে আমি একটি সমাধান যুক্ত করতে চেয়েছিলাম যে আমি নিজের সাথে এসেছি তা দেখতে পাচ্ছি না। একটি পৃথক সমাধানের সন্ধানের সময় এই প্রশ্নটি খুঁজে পেয়েছে এবং স্রেফ এই চিত্রটি পেয়েছেন, "আচ্ছা, আমি এখানে থাকি"।
প্রথমত, নীলের উত্তরটি আপনার লুপটি চালানোর পরে ব্যবহার করা ভাল এবং দুর্দান্ত, তবে আমি একবারে সমস্ত কাজ করতে পছন্দ করব। অবশ্যই, আমার নির্দিষ্ট ক্ষেত্রে আমাকে এখানে এই সাধারণ উদাহরণের চেয়ে বেশি কাজ করতে হয়েছিল , তবে এখনও পদ্ধতিটি প্রয়োগ হয়। আমি দেখেছি যেখানে অন্য এক দম্পতি foreachলুপের পরামর্শ দিয়েছিল , তবে এটি জন্তুটির প্রকৃতির কারণে এটি আপনাকে কাজের পরে ছেড়ে চলেছে। সাধারণত আমি সহজ বিষয়গুলির মতো পরামর্শ দিই foreach, তবে এই ক্ষেত্রে ভাল ভাল পুরানো ফ্যাশন for loopযুক্তি মনে রাখা ভাল । সহজভাবে ব্যবহার করুন i! যথাযথ সূচক বজায় রাখতে, iঅ্যারের আইটেমের প্রতিটি অপসারণের পরে কেবল বিয়োগ করুন।
এখানে আমার সহজ, কার্যকারী উদাহরণ:
$array = array(1,2,3,4,5);
for ($i = 0; $i < count($array); $i++) {
if($array[$i] == 1 || $array[$i] == 2) {
array_splice($array, $i, 1);
$i--;
}
}
আউটপুট দেবে:
array(3) {
[0]=> int(3)
[1]=> int(4)
[2]=> int(5)
}
এটিতে অনেকগুলি সাধারণ বাস্তবায়ন থাকতে পারে। উদাহরণস্বরূপ, আমার সঠিক ক্ষেত্রে বহুমাত্রিক মানের উপর ভিত্তি করে অ্যারেতে সর্বশেষ আইটেমটি ধরে রাখা দরকার। আমি কী বলতে চাইছি তা আমি আপনাকে প্রদর্শন করব:
$files = array(
array(
'name' => 'example.zip',
'size' => '100000000',
'type' => 'application/x-zip-compressed',
'url' => '28188b90db990f5c5f75eb960a643b96/example.zip',
'deleteUrl' => 'server/php/?file=example.zip',
'deleteType' => 'DELETE'
),
array(
'name' => 'example.zip',
'size' => '10726556',
'type' => 'application/x-zip-compressed',
'url' => '28188b90db990f5c5f75eb960a643b96/example.zip',
'deleteUrl' => 'server/php/?file=example.zip',
'deleteType' => 'DELETE'
),
array(
'name' => 'example.zip',
'size' => '110726556',
'type' => 'application/x-zip-compressed',
'deleteUrl' => 'server/php/?file=example.zip',
'deleteType' => 'DELETE'
),
array(
'name' => 'example2.zip',
'size' => '12356556',
'type' => 'application/x-zip-compressed',
'url' => '28188b90db990f5c5f75eb960a643b96/example2.zip',
'deleteUrl' => 'server/php/?file=example2.zip',
'deleteType' => 'DELETE'
)
);
for ($i = 0; $i < count($files); $i++) {
if ($i > 0) {
if (is_array($files[$i-1])) {
if (!key_exists('name', array_diff($files[$i], $files[$i-1]))) {
if (!key_exists('url', $files[$i]) && key_exists('url', $files[$i-1])) $files[$i]['url'] = $files[$i-1]['url'];
$i--;
array_splice($files, $i, 1);
}
}
}
}
আউটপুট দেবে:
array(1) {
[0]=> array(6) {
["name"]=> string(11) "example.zip"
["size"]=> string(9) "110726556"
["type"]=> string(28) "application/x-zip-compressed"
["deleteUrl"]=> string(28) "server/php/?file=example.zip"
["deleteType"]=> string(6) "DELETE"
["url"]=> string(44) "28188b90db990f5c5f75eb960a643b96/example.zip"
}
[1]=> array(6) {
["name"]=> string(11) "example2.zip"
["size"]=> string(9) "12356556"
["type"]=> string(28) "application/x-zip-compressed"
["deleteUrl"]=> string(28) "server/php/?file=example2.zip"
["deleteType"]=> string(6) "DELETE"
["url"]=> string(45) "28188b90db990f5c5f75eb960a643b96/example2.zip"
}
}
আপনি দেখতে পাচ্ছেন, আমি উপস্থিত আইটেমের চেয়ে আগেরটি সরিয়ে ফেলতে চাইছি বলে আমি স্প্লাইসের আগে হেরফের করি।