Вы можете использовать SetEnvIf
против URI
только формы root, как это:
SetEnvIf Request_URI "^/?(login|reset|raport)\.php" PASS
AuthUserFile /home/myaccount/public_html/.htpasswd
AuthType Basic
AuthName "Restricted area"
Order Deny,Allow
Deny from all
Satisfy any
Require valid-user
Allow from env=!PASS
Итак, форма здесь SetEnvIf Request_URI "^/?(login|reset|raport)\.php
вы убедитесь, что URI
начинается с login|reset|raport
только подкаталог.
reshape
- это, конечно, правильное решение, как сказано в @gnovice .
Приятной особенностью reshape
является то, что позволяет это:
A = 1:12;
B = reshape(A,4,[]);
B =
1 5 9
2 6 10
3 7 11
4 8 12
Итак, если вы не знаете, сколько будет столбцов, reshape
вычислит это для вас. Аналогично, reshape
будет заполнять количество строк, если вы пропустите это.
C = reshape(A,[],4)
C =
1 4 7 10
2 5 8 11
3 6 9 12
Попробуйте функцию RESHAPE :
A = (1-by-12 matrix);
B = reshape(A,4,3);
Обратите внимание, что матрица B будет заполнена элементами из A в мода по столбцам (то есть столбцы будут заполняться сверху вниз, двигаясь слева направо).
Пример:
>> A = 1:12;
>> B = reshape(A,4,3)
B =
1 5 9
2 6 10
3 7 11
4 8 12
, чтобы расширить решение gnovice:
Если вам нужен другой порядок построения матрицы, используйте transpose (оператор ') или permute ()
, чтобы изменить порядок размеров после того как вы вызвали reshape ()
.