Я хочу добавить данные в массив динамически.
Динамически добавлять данные в массив
Ответ 1
Существует несколько способов работы с динамическими массивами в PHP. Инициализировать массив:
$array = array();
Добавить в массив:
$array[] = "item";
$array[$key] = "item";
array_push($array, "item", "another item");
Удалить из массива:
$item = array_pop($array);
$item = array_shift($array);
unset($array[$key]);
Есть еще много способов, это лишь некоторые примеры.
Ответ 2
$array[] = 'Hi';
нажимает на вершину массива.
$array['Hi'] = 'FooBar';
задает определенный индекс.
Ответ 3
Скажем, вы определили пустой массив:
$myArr = array();
Если вы хотите просто добавить элемент, например. "Новый элемент в массив", напишите
$myArr[] = 'New Element to Array';
если вы вызываете данные из базы данных, ниже код будет работать нормально
$sql = "SELECT $element FROM $table";
$query = mysql_query($sql);
if(mysql_num_rows($query) > 0)//if it finds any row
{
while($result = mysql_fetch_object($query))
{
//adding data to the array
$myArr[] = $result->$element;
}
}
Ответ 4
Вы должны использовать метод array_push для добавления значения или массива в массив
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);
/** GENERATED OUTPUT
Array
(
[0] => orange
[1] => banana
[2] => apple
[3] => raspberry
)
*/
Ответ 5
Как это?:
$array[] = 'newItem';
Ответ 6
В дополнение к непосредственному доступу к массиву существует также
array_push
- нажимать один или несколько элементов на конец массива
Ответ 7
$dynamicarray = array();
for($i=0;$i<10;$i++)
{
$dynamicarray[$i]=$i;
}
Ответ 8
Динамическое добавление элементов массива в массив и добавление нового элемента к массиву
$samplearr=array();
$count = 0;
foreach ($rslt as $row) {
$arr['feeds'][$count]['feed_id'] = $row->feed_id;
$arr['feeds'][$count]['feed_title'] = $row->feed_title;
$arr['feeds'][$count]['feed_url'] = $row->feed_url;
$arr['feeds'][$count]['cat_name'] = $this->get_catlist_details($row->feed_id);
foreach ($newelt as $cat) {
array_push($samplearr, $cat);
}
++$count;
}
$arr['categories'] = array_unique($samplearr); //,SORT_STRING
$response = array("status"=>"success","response"=>"Categories exists","result"=>$arr);
Ответ 9
просто для удовольствия...
$array_a = array('0'=>'foo', '1'=>'bar');
$array_b = array('foo'=>'0', 'bar'=>'1');
$array_c = array_merge($array_a,$array_b);
$i = 0; $j = 0;
foreach ($array_c as $key => $value) {
if (is_numeric($key)) {$array_d[$i] = $value; $i++;}
if (is_numeric($value)) {$array_e[$j] = $key; $j++;}
}
print_r($array_d);
print_r($array_e);
Ответ 10
Самый быстрый способ, я думаю
$newArray = array();
for($count == 0;$row = mysql_fetch_assoc($getResults);$count++)
{
foreach($row as $key => $value)
{
$newArray[$count]{$key} = $row[$key];
}
}