Я выполняю некоторые sql-кеширование определенных запросов. Я использую CakePHP поэтому условия запроса в массиве таким образом:Каков самый чистый способ получить контрольную сумму многомерного массива?
array (
0 =>
array (
0 => 'Tutorial.id IN (SELECT tutorial_id FROM classifications WHERE classifications.product_id = 1) ',
),
1 =>
array (
'Tutorial.status_id ' =>
array (
0 => 4,
1 => 7,
),
),
'OR' =>
array (
'Tutorial.user_id' => '40',
),
);
Я в основном ищу product_id, но есть некоторые другие возможные условия, поэтому я хотел бы уменьшить массив контрольной суммы и добавьте его к имени файла кеша. Таким образом, у меня будет tutorials_by_classification-413a86af или что-то еще, и мне не придется выбирать через массив.
Я видел функцию для развязывания массивов mutli-d на php.net in the comments, но мне интересно, есть ли более простой способ достичь моей цели.
Спасибо, только то, что мне нужно! Я закончил использование crc32 для хэшей, потому что он сохраняет имена файлов короче http://codepad.org/LhTotSth. –