PHP code example of abgit / myfw
1. Go to this page and download the library: Download abgit/myfw library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
abgit / myfw example snippets
$app = new myfw();
...
$app->run();
$app = new myfw();
$app->get( '/', function(){
...
});
$app->run();
$app = new myfw();
$app->cron( 'somearg', function(){
...
});
$app->cron( 'somearg2', function(){
...
});
// init and set templates directory
$app = new myfw();
$app->config( 'templates.path', __DIR__ . '/templates' );
// on root
$app->get( '/', function() use ($app){
$app->render( 'mytemplate', array( 'str' => 'Hello world' ) );
});
$app->run();
// init and set template directory
$app = new myfw();
$app->config( 'templates.path', __DIR__ . '/templates' );
$app->get( '/news/:id', function($id) use ($app){
$app->render( 'mytemplate', array( 'str' => 'My news id is ' . $id ) );
});
$app->run();
$app = new myfw();
$app->setConditions( array( 'id' => '[0-9]{1,5}',
'arg1' => '[0-9a-zA-Z]{3,50}',
'arg2' => 'a|b' ) );
$app->get( '/news/:id', function($id) use ($app){
...
});
$app->get( '/other/:arg1/:arg2', function($arg1,$arg2) use ($app){
...
});
$app->run();
$app->get( '/news/:id', function($id) use ($app){
...
})->conditions( array( 'id' => '[0-9]{1,5}' ) );
$app = new myfw();
// choose mode
$app->config( 'mode', 'production' );
$app->configureMode( 'production', function () use ($app) {
$app->config( array(
'log.enable' => true,
'debug' => false
));
});
$app->configureMode( 'development', function () use ($app) {
$app->config( array(
'log.enable' => false,
'debug' => true
));
});
...
$app->run();
$app = new myfw();
$app->group('/backend', function() use ($app){
$app->get('/adduser/:id', function ($id){
...
});
$app->get('/showuser/:id', function ($id){
...
});
});
$app->run();
$app = new myfw();
$app->map( '/contact', function() use ($app){
$app->form()->addText( 'name', ... )
->addSelect( 'chooser', ... )
...
->addSubmit();
$app->form()->setDefault( function(){
return array( 'name' => ..., 'chooser' => ... );
});
$app->form()->onSubmittedAndValid( function() use ($app){
$formvalues = $app->form()->getValues();
// do something with $formvalues
});
$app->render( 'mytplfile', array( 'form' => $app->form() ) );
)->via( 'GET', 'POST' );
$app->run();
// load a news item. call findnewsid() mysql procedure
$app->db()->findOne( $result, 'findnewsid(nid|int)', array( 'nid' => $id ) );
// load all news. call findnews() mysql procedure
$app->db()->findAll( $results, 'findnews()' );
$app->db()->query( 'newsinsert(id|int,title|str|255)', array( 'id' => $id, 'title' => $title ) );
$app = new myfw();
$app->setConditions( array( 'id' => '[0-9]{1,5}' ) );
$app->map( '/item/:id', function($id) use ($app){
$app->form()->addText( 'title', ... )->addSubmit();
$app->form()->setDefault( function () use($app,$id){
if( $app->db()->findOne( $result, 'findnewsid(nid|int)', array( 'nid' => $id )))
return $result;
$app->form()->setErrorMessage( 'News item not available' )->hide();
});
$app->form()->onSubmittedAndValid( function() use ($app,$id){
if( $app->db()->apply( 'newsitemupdate(nid|int,title|str|255)', array( 'nid' => $id, 'title' => $app->form()->getValue( 'title' ) ) )
$app->form()->setSubmitMessage( 'News item details changed.' );
});
$app->render( ... );
)->via( 'GET', 'POST' );
_( "hello world" );
_n( "welcome %s to %s", array( $name, $portal ) );
_n( "1 orange", "lots of oranges", $counter );
_n( "1 orange", "%s oranges", $counter, $counter );
_n( "1 orange in %s tree", "%s oranges in %s trees", $counter, array( 'big' ), array( $counter, 'small' ) );
$app = new myfw();
$app->i18n()->setPath( __DIR__ . '/../i18n' );
$app->get('/:lang/something', function( $lang ) use ($app){
$app->i18n()->setLang( $lang );
..
});
$app->i18n()->setLang( 'en_US', true, true );
$app->map( '/contact', function() use ($app){
$app->form()->addText( 'myelement', 'Label', array( '
$app->map( '/contact', function() use ($app){
$app->form()->addText( 'myelement', 'Label', array( ' maxlen => array( 'Description is too big', 200 ) ) )
...
->addSubmit();
...
)->via( 'GET', 'POST' );
$app->run();
if( $app->rules()->maxlen( $x, 250 ) ){
...
}
// add form elements
$app->form()->addText( 'myelement', 'Label', array(..), array( 'trim' ) );
$app->form()->onSubmittedAndValid( function() use ($app){
// get values (filtered)
$arr = $app->form()->getValues();
});
$filteredvalue = $app->filters()->gravatar( 'someemail' );
// set $key
$app->session()->set( $key, $label );
// set $key if not exists only
$app->session()->setcheck( $key, $label );
// get $key value
$k = $app->session()->get( $key );
// check if $key exists
if( $app->session()->exists( $key ) ){ .. }
// delete $key
if( $app->session()->delete( $key ) ){ .. }
// set pluralkey 'admin - x' ( same as $_SESSION[ 'admin' ][ 'x' ] )
$app->session()->set( array( 'admin', 'x' ), $valueA );
$app->session()->set( array( 'admin', 'y' ), $valueB );
// get pluralkey 'admin - x'
$valueA = $app->session()->get( array( 'admin', 'x' ) );
$valueB = $app->session()->get( array( 'admin', 'y' ) );
// default apc ti to leave
$app->config( 'apc.ttl', 600 );
// default redis time to leave
$app->config( 'redis.ttl', 600 );
// cache set using apc
$app->cache()->set( APP_CACHEAPC, $key, $value );
or
$app->cache()->apcset( $key, $value );
// cache set using redis
$app->cache()->set( APP_CACHEREDIS, $key, $value );
or
$app->cache()->redisset( $key, $value );
// cache apc delete
$app->cache()->delete( APP_CACHEAPC, $key );
// cache redis delete
$app->cache()->delete( APP_CACHEREDIS, $key );
$app = new myfw();
...
$app->get( '/news/:id', 'iscache', function($id) use ($app){
...
$app->render( 'sometemplate', array( .. ) );
});
...
$app->config( 'log.init', true );
$app->config( 'log.level', \Slim\Log::DEBUG );
$app->cron( 'somecron', function() use ($app){
...
$app->log()->debug( 'my critical log line' );
...
$app->log()->warning( 'my warning log line' );
});
// default params
$app->config( 'email.from', $from );
$app->config( 'email.to', $to );
$app->config( 'email.subject', $subject );
// mailgun specific
$app->config( 'email.mailgunkey', $key );
$app->config( 'email.mailgundomain', $domain );
// send email
$app->mailer()->send( $from, $to, $subject, $text );
// send simple email with default email.from config
$app->mailer()->sendsystem( $to, $subject, $text );
// send simple email with default email.from, email.to and email.subject config
$app->mailer()->sendinternal( $text );
$app->config( 'email.template', 'mymail' );
$app->config( 'email.headers', array( 'bcc' => 'someemail' ) );
$app = new myfw();
$app->get('/new/:name/go', function ($name) {
echo "Some news item $name!";
})->name('newitem');
$url = $app->urlFor( "newsitem", array( "name" => $someitem ) );
// setup virustotal key
$app->config( 'vtotal.api', $key );
if( $app->vtotal()->getInfo( $info, "domain.com" ) ){
// read $info
...
}
// setup key and secret
$app->config( 'transloadit.k', $key );
$app->config( 'transloadit.s', $secret );
// compute transloadit assembly
$assembly = array(
'params' => array(
'template_id' => 'abababababababababababababa',
'steps' => array(
'mystep' => array(
'param' => $paramvar,
),
'otherstep' => array(
'otherparam' => $otherparamvar
)
)
)
);
// transloadit assembly webservice call
if( $app->transloadit()->createAssembly( $result, $assembly ) ){
...
}
if( $app->transloadit()->request( $returninfo, $assemblyUrl ) ){
// do something with $resultinfo
}
$app->config( 'bcloud.k', $key );
$app->config( 'bcloud.s', $secret );
if( $app->bcloud()->getInfo( $result, "domain.com" ) ){
// do something with $result
}
python
{{ str }}