Come impostazione predefinita la grandezza del contenuto di una variabile GET in php è di 512 caratteri, di conseguenza quelle se avete delle stringhe più lunghe non verranno prese in considerazione da $_REQUEST o da $_GET, per aumentare questa dimensione dovete installare il modulo suhosin e poi impostare il nuovo limite nel php.ini
apt-get install php5-suhosin
Aggiungere la seguente riga nel php.ini
suhosin.get.max_value_length = <limit>
dove al posto di
inserite il nuovo numero di caratteri che volete utilizzare, attenzione che Apache ha come valore di default 8000
Questa funzione restituisce un array con la lista di tutte le Action presenti in un qualsiasi Controller presente nella vostra applicazione, se anche voi come me avete la necessità di recuperarle in modo dinamico questa funzione è quello che stavate cercando:
public function getActions($controllerName){
require_once('../application/controllers/'.ucfirst($controllerName).'Controller.php');
$methods = get_class_methods(ucfirst($controllerName).'Controller');
$actions = array();
foreach ($methods as $k=>$v){
if (substr($v, -6, 6) == 'Action'){
array_push($actions, $v);
}
}
return $actions;
}
Ieri è stata rilasciata la quinta release della serie 1.9, ecco il link per scaricarla!
Come al solito il changelog riguardante le modifiche effettuate su questa versione lo potete trovare qui, ben 30 bug circa sono stati chiusi, in neanche tre settimane dal rilascio della 1.9.4
Rilasciata in queste ore la quarta release della serie 1.9!
Potete scaricarla direttamente da qui
Nei prossimi post troveremo modo di analizzare un po’ meglio questo framework di sviluppo, in quanto lo sto usando per lavoro e devo dire che mi sto trovando veramente bene!
Per quanto riguarda il changelog della versione potete trovarlo qui
Come avrete notato nei repository ufficiali di CentOs non sono presenti i pacchetti per Php 5.2.10 ma solo quelli per la versione 5.1.6, se proprio volete affidarvi a quelli di testing ufficiali potete arrivare alla 5.2.9 ma senza il supporto per mcrypt, mhash e tidy, ora se volete passare alla 5.2.10 con anche questi ultimi 3 moduli funzionanti impostate questo repository in yum:
[remi]
name=Les RPM de remi pour Enterpise Linux $releasever - $basearch
baseurl=http://rpms.famillecollet.com/el$releasever.$basearch/
http://remi.collet.free.fr/rpms/el$releasever.$basearch/
enabled=0
gpgcheck=1
gpgkey=http://rpms.famillecollet.com/RPM-GPG-KEY-remi
failovermethod=priority
Poi non dovete far altro che lanciare il comando:
$ yum --disablerepo=\* --enablerepo=remi check-update php=\*
Così potrete vedere tutti i pacchetti che potrete aggiornare, per installarli date un update di yum in questo modo:
$ yum --disablerepo=\* --enablerepo=remi update php=\*
Per avere maggiori informazioni sul fornitore del repository cliccate qui
Zend ha resto disponibile da poco la release candidate 1 del suo framework Php giunti alla versione 1.9.0 questo è l’indirizzo per scaricarla:
http://framework.zend.com/download/latest
Ricordo che la versione essendo un RC1 è ancora considerata non stabile, ma molto utile per gli sviluppatori per “assaggiare” le nuove features!
Qui potete trovare il link al post ufficiale con elencate le relative caratteristiche
Passando alla nuova versione 5.2.10 di Php chi di vuoi utilizza un database MS Sql per la gestione dei dati è molto probabile che abbiate incontrato questo bug, ovvero che usando la libreria PDO_DBlib vi venga restituito un errore di questo tipo:
Error Message: SQLSTATE[] (null) (severity 0)
Ho controllato su bugs.php.net ed ho trovato questo post
Quindi per risolvere questo problema in attesa che venga rilasciata una nuova versione di Php possiamo utilizzare gli snapshot che vengono messi a disposizione per gli sviluppatori, sono pacchetti che vengono aggiornati mediamente ogni 3 ore in attesa di una release ufficiale.
Scaricate all’indirizzo snaps.php.net il pacchetto conforme alla vostra versione e ricompilate la libreria PDO_DBlib sul Php da vuoi utilizzato.
Decomprimete il tar dove preferite ed entrate nella cartella
$ cd /User/pedro15/Desktop/php-5.2.10/ext/pdo_dblib
Lanciate phpize
L’output sarà simile a questo
/Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519/
Eseguite lo script di configurazione generato da phpize (nel mio caso associo il Php di Zend Server)
$ ./configure --with-php-config=/usr/local/zend/bin/php-config
Lanciate make
Ed infine come root eseguite
L’output sarà simile a
/Installing shared extensions: /usr/local/zend/lib/php_extensions/
La vostra libreria ora è aggiornata!
Dopo qualche tempo sono ritornato a lavorare a più non posso su Php, ecco perchè i miei post da ora in avanti inizieranno a prevalere su questo argomento, sperando possano ritornare utili a molti di vuoi vi auguro buona lettura!