পিএইচপি-তে অ্যারের শুরুতে কোনও আইটেম inোকানো কীভাবে?


167

আমি জানি কীভাবে এটি শেষ পর্যন্ত sertোকানো যায়:

$arr[] = $item;

তবে কীভাবে শুরুতে এটি sertোকানো যায়?


2
$arr[-1] = $item;এখানে পাওয়া: stackoverflow.com/a/15252657/669677

4
@ 2astalavista, এটি কাজ করে না: print_r($arr)=>Array ( [0] => a, [1] => b, [-1] => c )
লরেন্ট

@ returnthis.lau_ এই ক্ষেত্রে আপনার লুপের জন্য ব্যবহার করা উচিত - -1 থেকে শুরু করে - এটি কাজ করে: for ($i = -1; $i < count($a)-1; $i++)রেফারেন্সযুক্ত লিঙ্কটি যেমন দেখায় তবে এটি ভুলে যাওয়া সহজ, সুতরাং আমি সেই সমাধানটিকে আর পছন্দ করি না।

উত্তর:


267

ব্যবহারের array_unshift ($ অ্যারে, $ আইটেমটি);

$arr = array('item2', 'item3', 'item4');
array_unshift($arr , 'item1');
print_r($arr);

তোমাকে দিবে

Array
(
 [0] => item1
 [1] => item2
 [2] => item3
 [3] => item4
)

7
আপনার কী সংখ্যাসূচক, চাবি পরিবর্তে আক্ষরিক প্রয়োজন হয় তা সম্পর্কে?
ইভান

4
@Evan জন্য ডকুমেন্টেশন array_unshiftবলছেন নিম্নলিখিতAll numerical array keys will be modified to start counting from zero while literal keys won't be touched.
craned

1
দুটি সমস্যা রয়েছে: 1) অ্যারে পুনর্নির্মাণ 2) কোনও সূচক দিয়ে আইটেম যুক্ত করতে পারে না।
নবী কেএজেড

2
আপনার যদি কোনও সহযোগী অ্যারে থাকে বা কীগুলি সংরক্ষণের প্রয়োজন হয় তবে ব্যবহারকারীর উদাহরণগুলি এখানে দেখুন: php.net/manual/en/function.array-unshift.php এটি কীভাবে সম্পাদন করতে হবে তার কয়েকটি ভাল উদাহরণ রয়েছে!
ভ্যালিয়ার

112

কোনও এসোসিয়েটিভ অ্যারে বা সংখ্যাযুক্ত অ্যারের ক্ষেত্রে যেখানে আপনি অ্যারে কীগুলি পরিবর্তন করতে চান না:

$firstItem = array('foo' => 'bar');

$arr = $firstItem + $arr;

array_merge এটি সর্বদা অ্যারেটিকে পুনরায় সূচি দেয় বলে কাজ করে না।


6
এটি সত্যই সেরা উত্তর!
অঙ্কিত

5
মনোযোগ! "+ অপারেটর বাম-হাতের অ্যারেতে যুক্ত ডান হাতের অ্যারেটি প্রদান করে; উভয় অ্যারেতে থাকা কীগুলির জন্য, বাম-হাতের অ্যারের থেকে উপাদানগুলি ব্যবহৃত হবে এবং ডান হাতের অ্যারে থেকে মিলিত উপাদানগুলি হবে উপেক্ষিত। " - দেখুন: stackoverflow.com/a/2140094/3411766
cottton

সমাধানটি ভাল কারণ কারণ একটি সূচী দিয়ে আইটেম যুক্ত করতে পারে এবং অ্যারের পুনর্নির্মাণ করা হয়নি; বাম হাতের অ্যারেতে যদি একই সূচক থাকে তবে ডান হাতের অ্যারেতে আইটেম সরানোর বিষয়ে কেবল একটি নোট আছে।
নবী KAZ


6

স্ট্রিং / কাস্টম সূচক কী সহ কোনও মিশুক অ্যারের শুরুতে একটি আইটেম .োকান In

<?php

$array = ['keyOne'=>'valueOne', 'keyTwo'=>'valueTwo'];

$array = array_reverse($array);

$array['newKey'] = 'newValue';

$array = array_reverse($array);

ফলাফল

[
  'newKey' => 'newValue',
  'keyOne' => 'valueOne',
  'keyTwo' => 'valueTwo'
]

4

এইটা সাহায্য করবে

http://www.w3schools.com/php/func_array_unshift.asp

array_unshift();

2
B ওবিই: "ডাব্লু 3 স্কুলগুলি এই সমস্যাগুলি বেশিরভাগ ক্ষেত্রে সমাধান করেছে এবং সর্বাধিক স্বাক্ষরিত বিকাশকারীদের উদ্বেগের সমাধান করেছে" " ~ ডাব্লু 3ফুলস ডট কম
অ্যান্ড্রু কোজাক

4

একটি অ্যারেতে প্রথম উপাদানটি সন্নিবেশ করানোর জন্য অ্যারে_উন্সফিট () ব্যবহার করুন ।

অ্যারের প্রথম উপাদানটি সরিয়ে ফেলতে ব্যবহারকারীর অ্যারে_শিফ্ট ()


4

অথবা আপনি অস্থায়ী অ্যারে ব্যবহার করতে পারেন এবং তারপরে আপনি যদি চক্রের সাথে পরিবর্তন করতে চান তবে আসলটি মুছুন:

$array = array(0 => 'a', 1 => 'b', 2 => 'c');
$temp_array = $array[1];

unset($array[1]);
array_unshift($array , $temp_array);

আউটপুট হবে:

array(0 => 'b', 1 => 'a', 2 => 'c')

এবং চক্র চলাকালীন যখন এটি করছে তখন আপনার $temp_arrayআইটেমটিকে অ্যারে সংযুক্ত করার পরে পরিষ্কার করা উচিত ।


1

কাস্টম সূচক সহ:

$arr=array("a"=>"one", "b"=>"two");
    $arr=array("c"=>"three", "d"=>"four").$arr;

    print_r($arr);
    -------------------
    output:
    ----------------
    Array
    (
    [c]=["three"]
    [d]=["four"]
    [a]=["two"]
    [b]=["one"]
    )

1
একটি অ্যারের এভাবে জোটানো যায় না
ব্যাটাল হক

সম্ভবত তিনি বোঝাতে চেয়েছিলেন যে কমা (।) এর পরিবর্তে প্লাস (+) ব্যবহার করুন
এরদিনি Çরব্যাক

1

কোনও সাহসী অ্যারের জন্য আপনি কেবল মার্জটি ব্যবহার করতে পারেন।

$arr = array('item2', 'item3', 'item4');
$arr = array_merge(array('item1'), $arr)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.