O SpeedPHP 3 mudou de suporte exclusivo para MySQL/Smarty para suporte a vários tipos de banco de dados, bem como vários mecanismos de modelo e mecanismos de cache de dados.
SpeedPHP 3 fortalece e melhora a maioria das funções e arquitetura originais, alcançando um equilíbrio entre rápido, leve e fácil de expandir.
O SpeedPHP 3 corrigiu todos os bugs e erros desde o SpeedPHP2 e sua estabilidade atingiu um novo nível.
Atualizar do SpeedPHP versão 2 para o SpeedPHP versão 3 é muito simples e requer apenas as seguintes etapas:
Baixe arquivos do SpeedPHP 3.
Remova os arquivos originais do SpeedPHP 2 e substitua-os pelos arquivos do SpeedPHP 3.
Para o aplicativo SpeedPHP 2 original, você precisa adicionar a função spRun() na parte inferior do arquivo de entrada para iniciar o aplicativo.
Os arquivos HTML estáticos gerados pelo spHtml original devem ser excluídos e a pasta temporária (geralmente o diretório tmp) deve ser excluída e regenerada.
A caixa de entrada de senha criptografada no spAcl original tornou-se uma extensão independente no SpeedPHP 3. Vá para a seção de extensão do fórum SpeedPHP para baixar a nova extensão md5password (a caixa de entrada de senha criptografada original) para instalar e usar.
Como usar o SpeedPHP 3:
O uso do SpeedPHP 3 é basicamente o mesmo do SpeedPHP segunda edição, portanto o manual do SpeedPHP segunda edição também pode ser usado no SpeedPHP 3.
Várias instruções de configuração do banco de dados Instruções de configuração do mecanismo de modelo Instruções de configuração de cache Uso simples do mecanismo de modelo rápido Apresentando novos recursos:
1. Suporta vários tipos de banco de dados: MySQLi, Sqlite, Oracle, MsSQL, PDO, etc.
2. Adicionar versão de filial SAE de computação em nuvem SAE e versão de filial GBK (exclusivamente para plataforma de computação em nuvem Sina).
3. Suporta vários mecanismos de modelo: Smarty, Template Lite, speedy, etc.
4. Suporta vários mecanismos de cache: Memcache, Xcache, APC, eAccelerator, etc.
5. Melhore a estrutura do banco de dados e do driver do mecanismo de modelo, melhore a estrutura lógica do controlador e da classe de visualização, torne-o mais razoável e economize ainda mais recursos.
6. Muitas funções originais foram fortalecidas, a função estática de geração de spHTML foi aprimorada e o modo de URL estático foi aprimorado.
7. Adicione spRun, spDB, substitua, afetadoRows, runSql, escape,
8. Muitos bugs foram corrigidos desde o lançamento da segunda versão do SpeedPHP e a estabilidade foi bastante melhorada.
9. Para manter a configuração consistente do aplicativo, os membros do SP2 só precisam adicionar spRun ao arquivo de entrada.
10. Mantenha-o simples, fácil de aprender e leve.
Log de alterações
A extensão UrlRewrite foi atualizada, o mapeamento de controlador/ação foi adicionado, a ocultação principal/índice foi removida e a ocultação de parâmetros pode ser definida.
Adicionada a função de membro de escape para substituir __val_escape para filtragem de string e corrigido o modo de valor do modelo. Se o valor for falso, ele não será enviado ao modelo. Isso pode se adaptar à deficiência de que o loop do smarty não consegue determinar se existe um valor.
Modificada a lógica de processamento da função de membro de substituição do spModel para evitar a adição de novos registros por engano quando não há alterações de dados.
Otimize o modo de saída automática de página, a saída automática agora é operada pelo spController.
Corrigido um problema de prompt na função de importação. Corrigida a forma como os valores nulos são tratados no driver. Removidas instruções de registro de execução SQL redundantes de alguns bancos de dados. Corrigido o erro do driver pdo.
A função __val_escape do spModel é modificada para julgar nulos, números, etc. spCache é definido como uma classe afiliada spModel de uso único. Semelhante ao spVerifier, ele não pode ser chamado várias vezes. Remova os parâmetros inválidos do spLinker. código do objeto de visualização instanciado no construtor spController Movido para spRun.
Corrigido o processamento lógico da configuração 'url_path_base' e corrigido o problema de processamento de nomes de tabelas no limite no driver mssql.
A estrutura SpeedPHP se junta à bifurcação da versão do ambiente de computação em nuvem SAE
A estrutura SpeedPHP adicionou uma ramificação da versão GBK e revisou as informações de direitos autorais nos arquivos de código da estrutura SpeedPHP.
spModel adiciona um método de substituição para atualizar registros que atendam às condições. Se o registro não existir, um novo registro será adicionado.
Corrigida a lógica de limpeza dos dados do pager do spPager. Corrigida a lógica da função has do spArgs que determinará se a variável existe e se o comprimento do valor da variável é maior que 0.
spError registrará as informações de erro usando error_log no ambiente Release.
Protegido o prompt de erro de inicialização session_start. Lógica de geração spHtml otimizada. Método e lógica de prompt spHtml corrigidos. Ajustou o método de prompt e a lógica do spHtml para remover as configurações inúteis url_getter e url_setter em html e usar diretamente as funções de membro do spHtml.
Corrigido o valor de retorno de __val_escape sendo nulo.
spModel adiciona um método runSql. runSql substituirá a consulta para executar instruções SQL. O método de consulta é mantido para compatibilidade futura, mas é recomendado usar o método runSql com um significado mais claro.
spModel adiciona o método afetadoRows() para obter o número de registros afetados por atualização, criação e outras operações.
A função spRun é adicionada para separar o processo principal do speedphp e as duas etapas de execução do código do usuário, de modo que alguns códigos de operação que requerem bibliotecas de classes, mas antes que o código do usuário seja executado, possam ser adicionados. Ao mesmo tempo, ao atualizar para esta versão do framework, você precisa fazer uma modificação no arquivo de entrada: no arquivo de entrada (geralmente index.php): require(SP_PATH."/SpeedPHP.php"); linha, adicione chamada de função spRun().
A variável controlada pelo banco de dados conn é modificada para pública
Melhore o método de fielding do spHtml para parâmetros, use json_encode para substituir a serialização menos eficiente e estritamente digitada, para que os parâmetros da página gerada possam ser mais livres e eficientes, no entanto, no código existente atualizado para esta modificação, será necessário gerar novamente arquivos HTML estáticos.
Quando a configuração padrão url_path_base está vazia, o arquivo de entrada é /index.php
Erros tipográficos corrigidos na classe spAccessCache. Adicionada configuração sp_notice_php. Os desenvolvedores podem personalizar a mensagem de prompt de erro que o método spContrller não pode ser encontrado. problemas de nome de objeto registrados pela função de modelo e removidos do recurso experimental "Caixa de entrada de senha criptografada".
A classe spAccessCache oferece suporte à expansão da função spAccess com mais métodos de cache em um formato estendido. Atualmente, os tipos de driver de cache suportados pelo spAccessCache são os seguintes: Isso permite que os desenvolvedores tenham uma solução de mecanismo de modelo rápida e simples, além de mecanismos de modelo como o Smarty.
Adicionadas classes de driver de banco de dados db_pdo, db_pdo_mysql, db_pdo_sqlite para suportar a interface de banco de dados PDO. Atualmente, os links PDO mysql e sqlite são suportados e adicionados à classe de driver de banco de dados db_sae MySQL são suportados para serem adicionados à classe de driver de banco de dados db_oracle. tipos de banco de dados são suportados para serem adicionados à classe de driver de banco de dados db_sqlite, suportam o tipo de banco de dados Sqlite para ingressar na classe de driver de banco de dados db_mssql, suportam o tipo de banco de dados MSSQL para ingressar na classe db_mysqli, suportam o tipo de driver de banco de dados MySQLi, alteram o banco de dados mysql. nome do driver para db_mysql, adicione o método de formatação de limite, modifique o método de instanciação no construtor db_mysql e adicione suporte para mysql O modo de link longo do banco de dados é adicionado ao arquivo da biblioteca de classes TemplateLite As duas variáveis $tbl_name e $_db são alteradas para. público O construtor do spModel é reescrito para suportar o driver de vários tipos de banco de dados. Após a obtenção dos dados de paginação, eles serão excluídos, aqui não causará confusão nos próximos dados de paginação. Modificada a maneira como as instruções SQL implementam a lógica de limite para lidar com o problema de que alguns tipos de banco de dados não suportam a sintaxe de limite.
Em conjunto com spController, a instância do mecanismo de modelo é alterada. Melhorou a maneira de atribuir valores ao driver do mecanismo de modelo para executar o processamento tolerante a falhas de funções afiliadas ao modelo para oferecer suporte a mecanismos de modelo que não podem registrar funções de modelo. Melhore o método de leitura de rede do spHtml para evitar o problema de não conseguir ler arquivos, mas gerar páginas HTML em branco. Adicione a série CURL de métodos de leitura de rede para usar quando file_get_contents não puder ler dados de rede. Melhore o prompt de file_get_contents e detecte se o ambiente PHP proíbe a leitura da rede quando a leitura da rede falha. Restringe spHtml para gerar apenas arquivos HTML dentro do escopo de APP_PATH. Corrigidos problemas de lógica nas funções de leitura e geração de url do spHtml.
As variáveis do mecanismo de modelo do spController foram redefinidas para oferecer suporte a vários mecanismos de modelo. Corrigido problema de leitura da função __get Corrigido o problema que quando spArgs obtém o valor o padrão não pode ser 0.
Alterado o valor padrão da configuração db_driver_path e adicionada a função spDB pode obter um atalho simplesmente usando a subclasse spModel e operar diretamente na tabela (de propriedade de spModel) sem a definição da subclasse spModel. Remova o e comercial de spConfigReady, corrija o problema do caminho de saída automática do modelo, altere a localização do driver mysql, transfira o diretório Smarty e transfira o driver mysql, exclua o arquivo spDB e a função spDB será colocada em spFunctions como a função principal em o futuro.
Adicione o diretório Drivers e coloque a classe de driver do programa principal. Quando a visualização for fechada, você ainda poderá usar $this->variables e $this->display para atribuição de modelo. No entanto, sua sintaxe de modelo deve ser uma sintaxe PHP comum.
Expandir