Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите с массивом
 
 автор: а-я   (16.02.2009 в 11:49)   письмо автору
 
 

Привет.
помогите с такой задачкой!

<?
// допустим, имеем массив
$num_A = array(1,2,3,4,5,0);

// надо получить на выходе
$num2_A = array(
 
=> array(1,2,3,4,0,0),
 
=> array(1,2,3,0,0,0),
 
=> array(1,2,0,0,0,0),
 
=> array(1,0,0,0,0,0),
 
=> array(0,0,0,0,0,0)
);

//нужно работать только с ключами, т.к. значение неизвестно.
//как удобнее это сделать?
?>

  Ответить  
 
 автор: sim5   (16.02.2009 в 12:13)   письмо автору
 
   для: а-я   (16.02.2009 в 11:49)
 

Шестым элементом исходного массива всегда будет 0? В исходном массиве всегда 6 элементов и всегда нужно начинать обработку начиная с 5-го его элемента, либо это может быть произвольно? Если произвольно, то по какому принципу/признаку это определяется?

  Ответить  
 
 автор: а-я   (16.02.2009 в 12:22)   письмо автору
 
   для: sim5   (16.02.2009 в 12:13)
 

да, их всегда 6.

каждый раз надо убирать с конца, поэтому 6 элемент не нужен.

  Ответить  
 
 автор: а-я   (16.02.2009 в 12:31)   письмо автору
 
   для: а-я   (16.02.2009 в 11:49)
 

хотя наверно мне лучше сделать отдельную функцию, которая будет убирать послед число >0

<?
$num_A 
= array(1,2,3,4,0,0);

$num_A fun($num_A);

// на выходе должен
$num_A = array(1,2,3,0,0,0);
?>

  Ответить  
 
 автор: а-я   (16.02.2009 в 12:45)   письмо автору
 
   для: а-я   (16.02.2009 в 12:31)
 

наверно как то так:


<?
function fun($A){
 for(
$a=5$a>=0;$a--){
  if(
$A[$a]){
  
$A[$a] = 0;  
  break; 
  }
 
$A[$a]=0;  
 }
return 
$A;
}
?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования