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

Форум PHP

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

 

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

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

тема: удаление ключа и значение массива, но пустота остается :)
 
 автор: ronin   (12.02.2009 в 13:15)   письмо автору
 
 

Здравствуйте!
удаляю нетолько значение, но и ключ:

$end=11;
foreach($mass as $key1=>$value1)
{
if($key1>=$end)
{
unset($value1);
unset($key1);
}
$val[]=$value1;
}

для записи в БД:

$d1=implode("|",$val);

но эхо выдает:

+1|-1|-2|-3|-1|-3|-3|-4|-3|-3|-3|||||||||||

trim - не помогает.

  Ответить  
 
 автор: Trianon   (12.02.2009 в 13:17)   письмо автору
 
   для: ronin   (12.02.2009 в 13:15)
 

строка $val[]=$value1; выполняется вне всякого условия. Что удивляет-то?

писать операторы без отступа - это мода такая?

  Ответить  
 
 автор: Волки   (12.02.2009 в 13:23)   письмо автору
 
   для: ronin   (12.02.2009 в 13:15)
 

unset( $key1 ); 
никогда не приведет к нужному результату, это ведь не значение массива, надо
unset( $mass[$key1]);
и в if надо добавить "continue"

  Ответить  
 
 автор: ronin   (12.02.2009 в 13:39)   письмо автору
 
   для: Волки   (12.02.2009 в 13:23)
 

Странно, но

unset( $mass[$key1]); 

не удаляет, не могли бы Вы подробнее рассказать про continue.

Для Трианона

if($key1>=$end)
{
unset($value1);
}
else{
$val[]=$value1;
}

правильно?
операторы? здесь:

$d1=implode("|", $val);

  Ответить  
 
 автор: Trianon   (12.02.2009 в 13:46)   письмо автору
 
   для: ronin   (12.02.2009 в 13:39)
 

Для меня.
$end=11;
foreach($mass as $key1 => $value1)
  if($key1 < $end)
    $val[] = $value1;


вообще-то тот же результат можно достигнуть быстрее, воспользовавшись функцией array_slice()

  Ответить  
 
 автор: ronin   (12.02.2009 в 15:06)   письмо автору
 
   для: Trianon   (12.02.2009 в 13:46)
 

а , понял ,будем копать...
Спасибо!

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

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