Форум → Программирование → PHP для идиотов → Что Я, %username% ненавижу в ПХП
Что Я, %username% ненавижу в ПХП
Страницы: ← Предыдущая страница • Следующая страница →
-
-
Март 29, 2010, 12:10 п.п., спустя 20 минут 8 секунд
phpdude, согласен это пиздец.. я в одном месте использую ссылки.. в foreach…
foreach($somearray as &$v)
{
$v = Magic::doCast($v);
} -
Март 29, 2010, 12:30 п.п., спустя 19 минут 17 секунд
Через array_walk такое нельзя провернуть?https://smappi.org/ - платформа по созданию API на все случаи жизни -
Март 29, 2010, 12:43 п.п., спустя 13 минут 11 секунд
можно, но чаще всего это неудобно.$comments = Database::getInstance()->fetchAll('
SELECT
c.id, c.user_id, c.date_add,
e.id AS entry_id, e.title AS entry_title,
bc.title AS category_title, bc.url_part,
u.name AS user
FROM
:comments AS c
LEFT JOIN :blogs_entries e ON e.id=c.token
LEFT JOIN :blogs_categories bc ON bc.id=e.category_id
LEFT JOIN :users u ON u.id=c.user_id
WHERE c.module = "blogs/main"
ORDER BY c.date_add DESC
LIMIT 0, ?i', $this->getLimit());
$f = new Module_Formatter_Class();
foreach ($comments as &$comment) { // в пыхе до 5.3 нет замыканий, делать callback через create_function напряжно. Выделять в отдельный метод, который будет передан array_walk? тоже незачем. Проще всего через ссылку
$comment['user_url'] = $f->formatUserUrl($comment['user']);
$comment['category_url'] = '/blogs/' . $comment['url_part'];
$comment['entry_url'] = $comment['category_url'] . '/' . $comment['entry_id'];
$comment['url'] = $comment['entry_url'] . '#comment' . $comment['id'];
}
return template()->assign('comments', $comments)->render('modules/blogs/lastComments');
плохо то, что иногда нужен ключ, а тогда по ссылке не передать (или у меня не получалось). Или даже ключ по ссылке)
// из валидатора
protected function formatMessage($message, array $data = array())
{
foreach ($data as $key => $value) {
$data['%' . $key . '%'] = $value;
unset($data[$key]);
}
return strtr($message, $data);
} -
Март 29, 2010, 2:13 п.п., спустя 1 час 30 минут 2 секунды
foreach ($comments as &$comment) { // в пыхе до 5.3 нет замыканий, делать callback через create_function напряжно. Выделять в отдельный метод, который будет передан array_walk? тоже незачем. Проще всего через ссылку
$comment['user_url'] = $f->formatUserUrl($comment['user']);
чем тебе foreach($comments as $i=>$comment)
…
$comments[$i] = $comment;
не устроил?Сапожник без сапог -
Март 29, 2010, 2:28 п.п., спустя 15 минут 9 секунд
на 4 символа больше в каждой строке против одного символа (&) в одной. Мне тупо лень их писать (да, моментами я невыносим)Спустя 32 сек.та и просто не хочу, что б от этих всех [$i] в глазах рябило -
-
Апрель 7, 2010, 5:38 п.п., спустя 9 дней 2 часа 50 минут
<?php
$x = intval("2") * 1024 * 1024 * 1024;
var_dump($x, intval($x));float(2147483648)
int(-2147483648)
кто знает почему так ? -
Апрель 7, 2010, 6:19 п.п., спустя 41 минуту
NRG,dev:~# php test.php
int(2147483648)
int(2147483648)
забавно :)
обожаю пыхСпустя 22 сек.NRG, сколькибитная система? какая ось?Сапожник без сапог -
Апрель 7, 2010, 6:21 п.п., спустя 2 минуты 31 секунду
Windows XP Professional Service Pack 3 (32 bit) -
Апрель 7, 2010, 6:26 п.п., спустя 5 минут 8 секунд
я на 64 битке дебиане проверял
Windows XP Professional Service Pack 3 (32 bit)Сапожник без сапог -
-
Апрель 7, 2010, 6:35 п.п., спустя 2 минуты 44 секунды
ну ты истину глаголишь)))
phpdude, сравнение хуя с пальцем на пiха.ру
возможно на 32 битках он неправильно себя ведет с большими числами(преграничными)Сапожник без сапог -
Апрель 7, 2010, 6:41 п.п., спустя 5 минут 25 секунд
Видимо в винде на тип integer отводится 32 бита, а на - float 64.
При заполнении 32 бита знак меняется на отрицательный т.к. этот бит собственно является признаком отрицательности (в пыхе нет беззнаковых типов, как в си).
В никсах похоже на int отводится больше места. -
Апрель 7, 2010, 6:43 п.п., спустя 1 минуту 55 секунд
также подумал, только не смог "написать" чтото адекватное))
Видимо в винде на тип integer отводится 32 бита, а на - float 64.
При заполнении заполнении 32 бита знак меняется на отрицательный т.к. этот бит собственно является признаком отрицательности (в пыхе нет беззнаковых типов, как в си).
В никсах похоже на int отводится больше места.Спустя 181 сек.The size of an integer is platform-dependent, although a maximum value of about two billion is the usual value (that's 32 bits signed). 64-bit platforms usually have a maximum value of about 9E18. PHP does not support unsigned integer s
ну да :)Сапожник без сапог
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!