本文整理汇总了PHP中R::ext方法的典型用法代码示例。如果您正苦于以下问题:PHP R::ext方法的具体用法?PHP R::ext怎么用?PHP R::ext使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类R
的用法示例。
在下文中一共展示了R::ext方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testDynamicPlugins
/**
* Test if we can dynamically extend the R-facade.
*
* @return void
*/
public function testDynamicPlugins()
{
testpack('Test dynamic plugins');
//basic behaviour
R::ext('makeTea', function () {
return 'sorry cant do that!';
});
asrt(R::makeTea(), 'sorry cant do that!');
//with parameters
R::ext('multiply', function ($a, $b) {
return $a * $b;
});
asrt(R::multiply(3, 4), 12);
//can we call R inside?
R::ext('singVersion', function () {
return R::getVersion() . ' lalala !';
});
asrt(R::singVersion(), R::getVersion() . ' lalala !');
//should also work with RedBean_Facade
asrt(RedBean_Facade::singVersion(), R::getVersion() . ' lalala !');
//test error handling
try {
R::ext('---', function () {
});
fail();
} catch (RedBean_Exception $e) {
asrt($e->getMessage(), 'Plugin name may only contain alphanumeric characters.');
}
try {
R::__callStatic('---', function () {
});
fail();
} catch (RedBean_Exception $e) {
asrt($e->getMessage(), 'Plugin name may only contain alphanumeric characters.');
}
try {
R::invalidMethod();
fail();
} catch (RedBean_Exception $e) {
asrt($e->getMessage(), 'Plugin \'invalidMethod\' does not exist, add this plugin using: R::ext(\'invalidMethod\')');
}
}
示例2: print_r
<?php
require 'rb.php';
/* 设置连接属性 数据库类型 数据库名 用户名密码等 */
R::setup('mysql:host=localhost;dbname=dbname', 'dbusername', 'dbpassword');
/* native SQL query */
$book = R::getAll('SELECT * FROM tbl_user');
echo "<pre>";
print_r($book);
/* ORM save */
/* 注意这里不要使用前缀下划线命名的表 否则会抛出错误 如tbl_user */
$usertb = R::dispense("usertb");
$usertb->name = 'aaas';
$usertb->age = 200;
R::store($usertb);
/* ORM save */
/* 下面的方法可用于在下划线的表 */
define('PAGE', 'tbl_user');
R::ext('xdispense', function ($type) {
return R::getRedBean()->dispense($type);
});
$tbl_user = R::xdispense(PAGE);
$tbl_user->name = 'aaas';
$tbl_user->age = 200;
R::store($tbl_user);
示例3: _setExtendedFunctionsDB
protected function _setExtendedFunctionsDB()
{
R::ext('xdispense', function ($type) {
return R::getRedBean()->dispense($type);
});
}
示例4: function
// public static function getAllpage($tbname, $startIndex = 0, $numRows = 20, $type = null, $userid='system')
R::ext('getAllpage', function ($tbname, $startIndex = 0, $numRows = 20, $type = null, $userid = 'system') {
return AMFUtil::getAllpage($tbname, $startIndex, $numRow, $type, $userid);
});
R::ext('getKey', function () {
return AMFUtil::getKey();
});
// public static function setKey($key) {
R::ext('setKey', function ($key) {
return AMFUtil::setKey($key);
});
// public static function mc_encrypt($encrypt, $key=null){
R::ext('mcencrypt', function ($encrypt, $key = null) {
return AMFUtil::mcencrypt($encrypt, $key);
});
// public static function mc_decrypt($decrypt, $key=null){
R::ext('mcdecrypt', function ($decrypt, $key = null) {
return AMFUtil::mcdecrypt($decrypt, $key);
});
R::ext('imageresize', function ($src, $dst, $width, $height, $crop = 0) {
return AMFUtil::image_resize($src, $dst, $width, $height, $crop);
});
// R::ext('',function( ){
// return AMFUtil::();
// });
// R::ext('',function( ){
// return AMFUtil::();
// });
// R::ext('',function( ){
// return AMFUtil::();
// });