Для 32-битных систем стандартом de facto является ILP32, то есть int
, long
и указатель - все 32-битные величины.
Для 64-битных систем, основным стандартом Unix de facto является LP64 - long
, а указатель - 64-битный (но int
- 32-разрядный). 64-битный стандарт Windows - LLP64 - long long
, а указатель - 64-разрядный (но long
и int
оба 32-разрядные).
В свое время некоторые Unix-системы использовали ILP64.
Ни один из этих фактических стандартов не законодательно закреплен стандартом C (ISO / IEC 9899: 1999), но все они разрешены им.
И, по определению, sizeof(char)
- 1
, несмотря на тест в скрипте настройки Perl.
Обратите внимание, что были машины (Crays), где CHAR_BIT
было намного больше 8. Это означало, что IIRC, что sizeof(int)
также было 1, поскольку оба char
и int
были 32-битными.
ActiveRecord, кажется, состояние в данный момент. Я не могу рекомендовать хорошие платформы PHP для этого все же. Я попробовал, Продвигают, который, в то время как хороший, не легко настроить (особенно на хосте, что Вы ничего не можете установить на).
В конечном счете я прокрутил свою собственную платформу ORM/ActiveRecord, которая не является слишком большой работой и очень поучительный. Я уверен, что другие люди могут рекомендовать хорошие платформы PHP.
Смотрите на Платформу Зенда, конкретно Zend_Db. Это имеет Уровень абстракции Базы данных, который не требует, чтобы что-либо кроме расширения MySQLi было установлено, и не является полноценной моделью ORM.
Возможно, Доктрина сделала бы задание? Это, кажется, вдохновлено, в спящем режиме.
rix0rrr совершают нападки на нем немного, в котором много инструментов являются болью для установки. Конечно, у меня есть свое собственное решение этой проблемы, которая работала вполне хорошо в течение прошлых нескольких лет. Это - проект, названный dbFacile
Я также записал что-то вроде сравнения использования инструментов, которые я нашел несколько лет назад. Это неполно, но могло бы дать Вам хорошую начальную точку.
Вы упомянули, что не хотите встраивать необработанные запросы, но Вы не хотите ORM, таким образом, я немного смущен вторым планом, Вы надеетесь найти. У меня также есть проект ORM, который имеет целью требовать минимальной установки и большой простоты использования.
Единственное требование для моих проектов является PHP5.
Вы могли также смотреть на Прадо. http://www.pradosoft.com/ Это использует Активную Запись и ДАО. Также при использовании .NET затем, часть форматирования и конвенций подобна.
Я попробовал бы платформу. Платформа зенда была процитирована. Symfony кажется интересным. Это основано на идеях от Ruby on Rails.