PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (1): [1]
Найдено сообщений: 12
myselfdsk
Отправлено: 21 Ноября, 2012 - 13:31:21 • Тема: Пропуск несуществующего элемента массива • Форум: Вопросы новичков
Ответов: 5 Просмотров: 356
KingStar пишет: Немного не понятно что ты делаешь, столько циклов - черт ногу сломит. Я бы первым делом пеершел с for на foreach, дальше по заданию
Цитата: последующие шаги не обрабатывали элементы (ключи), которых нет в массиве
array_key_exists либо
in_array
как-то так
Вот за foreach спасибо, что-то он из головы вылетел, реально удобней получится
Попробую array_key_exists , может что и получится, надо проверить
myselfdsk
Отправлено: 21 Ноября, 2012 - 11:10:59 • Тема: Пропуск несуществующего элемента массива • Форум: Вопросы новичков
Ответов: 5 Просмотров: 356
CODE (
htmlphp ):
скопировать код в буфер обмена
for($c=0;$c< count( $file_start ) ; $c ++ ) {
for ( $j = 0 ; $j < count( $sost ) ; $j ++ ) {
if ( $j !== 0) {
$minimum [ $j ] = min ( $sost [ $j ] ) ; $minimal = min ( $minimum ) ; if ( $key !== false ) {
$keys [ $j ] = $key ;
}
}
}
$first = $keys [ 0] ;
$second = $keys [ 1] ;
for ( $w = 0 ; $w < count( $stack2 [ $first ] ) ; $w ++ ) {
$stack2 [ $first ] [ $w ] = $stack2 [ $first ] [ $w ] + $stack2 [ $second ] [ $w ] ;
}
unset ( $stack2 [ $second ] ) ; echo '<br> ';
echo count($stack2);
echo '< br> ';
$stack2 = array_values($stack2);
print_r($stack2);
$maxx= max(array_flip((array_keys($stack2))));
for ($i=0;$i< count( $stack2 ) ; $i ++ ) {
if ( $i !== $second ) {
for ( $k = 0 ; $k < count( $stack2 ) ; $k ++ ) {
if ( $k !== $second ) {
$proizv = 0 ;
for ( $a = 0 ; $a < $elements ; $a ++ ) {
$minus = $stack2 [ $i ] [ $a ] - $stack2 [ $k ] [ $a ] ;
$proizv = $proizv + $minus ;
}
if ( $proizv == 0)
$proizv = '99999999999999999999999' ;
$sost [ $i ] [ $k ] = $proizv ;
echo $sost [ $i ] [ $k ] ;
echo '<br> ';
}
}
}
}
}
быдло-код пока в режиме начального написания.
$sost - матрица, указанная в примере
составляется мутем математич манипуляций с переменной $stack2
На каждом шаге я нахожу в массиве sost (например, матрица 4х4) минимальный элемент, беру его координаты, объединяю их в массиве staсk2 и удаляю строку и столбец с одним из номеров, и получаю в sost матрицу уже 3х3, и так же использую её.
Вообще это кластеризация методом ближайшего соседа, и я пытаюсь сделать его реализацию на php
myselfdsk
Отправлено: 21 Ноября, 2012 - 09:22:57 • Тема: Пропуск несуществующего элемента массива • Форум: Вопросы новичков
Ответов: 5 Просмотров: 356
добра всем.
У меня такая проблема:
Есть входной 2мерный массив(квадратная матрица):
CODE (
htmlphp ):
скопировать код в буфер обмена
пример:
[ 0
] => Array ( [ 0
] => 99999999999999999999999
[ 1
] => 10
[ 2
] => 4
. 4721359549996
[ 3
] => 11
. 313708498985
) [ 1
] => Array ( [ 0
] => 10
[ 1
] => 99999999999999999999999
[ 2
] => 9
. 6953597148327
[ 3
] => 13
. 266499161422
) [ 2
] => Array ( [ 0
] => 4
. 4721359549996
[ 1
] => 9
. 6953597148327
[ 2
] => 99999999999999999999999
[ 3
] => 11
. 045361017187
) [ 3
] => Array ( [ 0 ] => 11
. 313708498985
[ 1 ] => 13
. 266499161422
[ 2 ] => 11
. 045361017187
[ 3 ] => 99999999999999999999999 ) )
На каждом шаге мне нужно удалять , например, вторую строку, второй столбец, сохранять её номер (цифру 2) и повторять снова, пока не останется лишь один элемент.
Но при этом ключи должны оставаться неизменными (с ними тоже после будут манипуляции)
Так вот, мне нужно чтобы последующие шаги не обрабатывали элементы (ключи), которых нет в массиве.
Может есть какое-то условие , чтобы это обойти.
Код могу предоставить по требованию.
myselfdsk
Отправлено: 12 Ноября, 2012 - 13:51:07 • Тема: Перевод строки в верхний регистр • Форум: Вопросы новичков
Ответов: 5 Просмотров: 307
eai пишет: А разве mb_strtoupper не есть та самая мультибайтовая фикция, ой нет, факция, опять не то, ну как то так
?
Так то да, но для UTF-8 её следует использовать так :
myselfdsk
Отправлено: 12 Ноября, 2012 - 10:24:37 • Тема: Перевод строки в верхний регистр • Форум: Вопросы новичков
Ответов: 5 Просмотров: 307
eai пишет: Странно странно, а файл в какой кодировке ?
UTF-8
Только сейчас увидел, что для файлов в кодировке UTF-8 следует использовать мультибайтовые функции
Проблемку решил другим путем :
CODE (
htmlphp ):
скопировать код в буфер обмена
function my_strtoupper ( $string ) {
$string ,
'абвгдеёжзийклмнорпстуфхцчшщъьыэюя' ,
'АБВГДЕЁЖЗИЙКЛМНОРПСТУФХЦЧШЩЪЬЫЭЮЯ' ) ;
return $string ;
} ;
Извиняюсь за беспокойство
myselfdsk
Отправлено: 12 Ноября, 2012 - 10:12:18 • Тема: Перевод строки в верхний регистр • Форум: Вопросы новичков
Ответов: 5 Просмотров: 307
Проблемка такая :
есть строка
нужно перевести её в верхний регистр , но функции
и
Упорно не хотят ничего делать
Как можно это сделать иначе или заставить работать эти функции ??
myselfdsk
Отправлено: 26 Октября, 2012 - 11:02:27 • Тема: Переменная в регулярке • Форум: Программирование на PHP
Ответов: 4 Просмотров: 303
привет
есть регулярка, к примеру :
и мне нужно вместо («|») записать данные из переменной (строки)
например:
как передать туда переменную и будет ли в таком случае корректно работать метасимвол выбора | , записаный в строке ?
myselfdsk
Отправлено: 24 Октября, 2012 - 11:58:59 • Тема: Кодировка и preg_split • Форум: Кодировки и все смежное
Ответов: 2 Просмотров: 1902
вот такая проблема:
Есть кусок кода :
И вот такой результат:
CODE (
htmlphp ):
скопировать код в буфер обмена
О дивный чудный мир
Array ( [0] => О [1] => дивн� [2] => й [3] => дн� [4] => й [5] => ми� )
Никак не могу разобраться что не так с кодировкой, может кто чего подскажет
Страниц (1): [1]
Powered by ExBB FM 1.0 RC1. InvisionExBB