本文整理汇总了PHP中AkInflector::camelize方法的典型用法代码示例。如果您正苦于以下问题:PHP AkInflector::camelize方法的具体用法?PHP AkInflector::camelize怎么用?PHP AkInflector::camelize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AkInflector
的用法示例。
在下文中一共展示了AkInflector::camelize方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handle
function handle()
{
$this->__ParentController->params = $this->__ParentController->Request->getParams();
$this->_file_name = AkInflector::underscore($this->__ParentController->params['controller']) . '_controller.php';
$this->_class_name = AkInflector::camelize($this->__ParentController->params['controller']) . 'Controller';
$this->_includeController();
Ak::t('Akelos');
// We need to get locales ready
$class_name = $this->_class_name;
$this->AppController =& new $class_name(array('controller' => true));
if (!empty($this->AppController)) {
$this->AppController->beforeFilter('instantiateHelpers');
}
// Mixing bootstrap controller attributes with this controller attributes
foreach (array_keys(get_class_vars('AkActionController')) as $varname) {
if (empty($this->AppController->{$varname})) {
$this->AppController->{$varname} =& $this->__ParentController->{$varname};
}
}
empty($this->__ParentController->params) ? $this->__ParentController->params = $this->__ParentController->Request->getParams() : null;
$action_name = $this->_getActionName();
$this->_before($this->AppController);
$this->AppController->performActionWithFilters($action_name);
$this->_after($this->AppController);
$this->AppController->Response->outputResults();
}
示例2: cast
function cast()
{
$this->model_name = AkInflector::camelize($this->model_name);
$this->model_file_path = AkInflector::toModelFilename($this->model_name);
$this->controller_name = empty($this->controller_name) ? $this->model_name : (AkInflector::camelize($this->controller_name));
$this->controller_file_path = AkInflector::toControllerFilename($this->controller_name);
$this->controller_class_name = $this->controller_name.'Controller';
$this->controller_human_name = AkInflector::humanize($this->controller_name);
$this->helper_var_name = '$'.AkInflector::underscore($this->controller_name).'_helper';
$this->singular_name = AkInflector::underscore($this->model_name);
$this->plural_name = AkInflector::pluralize($this->singular_name);
$this->singular_controller_name = AkInflector::underscore($this->controller_name);
$this->files = array(
'controller.php' => $this->controller_file_path,
/**
* @todo Implement generic functional tests
*/
// 'functional_test.php' => AK_TEST_DIR.DS.'functional'.DS.'test_'.$this->controller_class_name.'.php',
'helper.php' => AK_HELPERS_DIR.DS.trim($this->helper_var_name,'$').'.php',
'layout' => AK_VIEWS_DIR.DS.'layouts'.DS.$this->singular_controller_name.'.tpl',
'view_add' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'add.tpl',
'view_destroy' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'destroy.tpl',
'view_edit' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'edit.tpl',
'view_listing' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'listing.tpl',
'view_show' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'show.tpl',
'form' => AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.'_form.tpl',
);
$this->user_actions = array();
foreach ((array)@$this->actions as $action){
$this->user_actions[$action] = AK_VIEWS_DIR.DS.$this->singular_controller_name.DS.$action.'.tpl';
}
}
示例3: runCommand
function runCommand($command)
{
$commands = $this->getOptionsFromCommand($command);
$generator_name = isset($commands['generator']) ? $commands['generator'] : array_shift($commands);
if (empty($generator_name)) {
echo "\n " . Ak::t("You must supply a valid generator as the first command.\n\n Available generator are:");
echo "\n\n " . join("\n ", $this->_getAvailableGenerators()) . "\n\n";
AK_CONSOLE_MODE ? null : exit;
return;
}
if (count(array_diff($commands, array('help', '-help', 'usage', '-usage', 'h', '-h', 'USAGE', '-USAGE'))) != count($commands) || count($commands) == 0) {
$usage = method_exists($this, 'banner') ? $this->banner() : @Ak::file_get_contents(AK_SCRIPT_DIR . DS . 'generators' . DS . $generator_name . DS . 'USAGE');
echo empty($usage) ? "\n" . Ak::t('Could not locate usage file for this generator') : "\n" . $usage . "\n";
return;
}
if (file_exists(AK_SCRIPT_DIR . DS . 'generators' . DS . $generator_name . DS . $generator_name . '_generator.php')) {
include_once AK_SCRIPT_DIR . DS . 'generators' . DS . $generator_name . DS . $generator_name . '_generator.php';
$generator_class_name = AkInflector::camelize($generator_name . '_generator');
$generator = new $generator_class_name();
$generator->type = $generator_name;
$generator->_identifyUnnamedCommands($commands);
$generator->_assignVars($commands);
$generator->cast();
$generator->_generate();
} else {
echo "\n" . Ak::t('Could not find %generator_name generator', array('%generator_name' => $generator_name)) . "\n";
}
}
示例4: createController
public function createController($controller_name)
{
$controller_class_name = AkInflector::camelize($controller_name) . 'Controller';
$this->Controller = $this->partialMock($controller_class_name, $this->getMethodsToMockForController());
#$this->Controller->Template = $this->getMock('AkActionView');
return $this->Controller;
}
示例5: runCommand
function runCommand($command)
{
$commands = $this->getOptionsFromCommand($command);
$generator_name = AkInflector::underscore(isset($commands['generator']) ? $commands['generator'] : array_shift($commands));
$available_generators = $this->_getAvailableGenerators();
$generator_file_name = array_shift(array_keys($available_generators, $generator_name));
if (empty($generator_file_name)) {
echo "\n " . Ak::t("You must supply a valid generator as the first command.\n\n Available generator are:");
echo "\n\n " . join("\n ", $available_generators) . "\n\n";
defined('AK_CONSOLE_MODE') && AK_CONSOLE_MODE ? null : exit;
return;
}
if (include_once $generator_file_name) {
$generator_class_name = AkInflector::camelize($generator_name . '_generator');
$generator = new $generator_class_name();
$generator->_generator_base_path = dirname($generator_file_name);
if (count(array_diff($commands, array('help', '-help', 'usage', '-usage', 'h', '-h', 'USAGE', '-USAGE'))) != count($commands) || count($commands) == 0) {
if (empty($generator->command_values) && empty($commands)) {
// generator without commands
} else {
$generator->banner();
return;
}
}
$generator->type = $generator_name;
$generator->_identifyUnnamedCommands($commands);
$generator->_assignVars($commands);
$generator->cast();
$generator->_generate();
} else {
echo "\n" . Ak::t('Could not find %generator_name generator', array('%generator_name' => $generator_name)) . "\n";
}
}
示例6: _preloadPaths
function _preloadPaths()
{
$this->class_name = AkInflector::camelize(preg_replace('/_?controller$/i', '', $this->class_name));
$this->assignVarToTemplate('class_name', $this->class_name);
$this->underscored_controller_name = AkInflector::underscore($this->class_name);
$this->controller_path = 'controllers' . DS . $this->underscored_controller_name . '_controller.php';
}
示例7: cast
function cast()
{
$this->model_name = AkInflector::camelize($this->model_name);
$this->model_file_path = AkInflector::toModelFilename($this->model_name);
if (empty($this->actions) && !empty($this->controller_name) && strstr($this->controller_name, ',')) {
$this->controller_name = '';
}
$this->controller_name = empty($this->controller_name) ? AkInflector::pluralize($this->model_name) : AkInflector::camelize($this->controller_name);
$this->controller_file_path = AkInflector::toControllerFilename($this->controller_name);
$this->controller_class_name = str_replace(array('/', '::'), '_', $this->controller_name . 'Controller');
$this->controller_name = AkInflector::demodulize($this->controller_name);
$this->controller_human_name = AkInflector::humanize($this->controller_name);
$this->helper_name = (AkInflector::is_plural($this->controller_name) ? AkInflector::singularize($this->controller_name) : $this->controller_name) . 'Helper';
$this->helper_var_name = '$' . AkInflector::underscore($this->helper_name);
$this->singular_name = AkInflector::underscore($this->model_name);
$this->plural_name = AkInflector::pluralize($this->singular_name);
$this->singular_controller_name = AkInflector::underscore($this->controller_name);
$this->module_preffix = AkInflector::underscore(substr($this->controller_class_name, 0, strrpos($this->controller_class_name, '_')));
$this->module_preffix = empty($this->module_preffix) ? '' : DS . $this->module_preffix;
$this->files = array('controller.php' => $this->controller_file_path, 'helper.php' => AK_HELPERS_DIR . $this->module_preffix . DS . trim($this->helper_var_name, '$') . '.php', 'layout' => AK_VIEWS_DIR . DS . 'layouts' . DS . $this->singular_controller_name . '.tpl', 'view_add' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . 'add.tpl', 'view_destroy' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . 'destroy.tpl', 'view_edit' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . 'edit.tpl', 'view_listing' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . 'listing.tpl', 'view_show' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . 'show.tpl', 'form' => AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . '_form.tpl');
$this->user_actions = array();
foreach ((array) @$this->actions as $action) {
$this->user_actions[$action] = AK_VIEWS_DIR . $this->module_preffix . DS . $this->singular_controller_name . DS . $action . '.tpl';
}
}
示例8: generate
function generate()
{
$this->_preloadPaths();
$this->class_name = AkInflector::camelize($this->class_name);
$files = array(
'mailer'=>AkInflector::toModelFilename($this->class_name),
'unit_test'=>AK_TEST_DIR.DS.'unit'.DS.'app'.DS.'models'.DS.$this->underscored_class_name.'.php'
);
foreach ($files as $template=>$file_path){
$this->save($file_path, $this->render($template));
}
$mailer_views_folder = AK_VIEWS_DIR.DS.AkInflector::underscore($this->class_name);
@Ak::make_dir($mailer_views_folder);
foreach ($this->actions as $action){
$this->assignVarToTemplate('action', $action);
$path = $mailer_views_folder.DS.$action.'.tpl';
$this->assignVarToTemplate('path', $path);
$this->save($path, $this->render('view'));
}
}
示例9: _preloadPaths
function _preloadPaths()
{
if(!empty($this->class_name_arg)){
$this->class_name = $this->class_name_arg;
}
$this->class_name = $this->controller_name = $this->class_name_arg = str_replace('::', '/', AkInflector::camelize(preg_replace('/_?controller$/i','',$this->class_name)));
$this->module_path = '';
// Controller inside module
if(strstr($this->class_name_arg,'/')){
$module_parts = substr($this->class_name, 0, strrpos($this->class_name_arg, '/'));
$this->module_path = join(DS, array_map(array('AkInflector','underscore'), strstr($module_parts, '/') ? explode('/', $module_parts) : array($module_parts))).DS;
$this->controller_name = substr($this->class_name_arg, strrpos($this->class_name_arg, '/') + 1);
$this->underscored_controller_name = $this->module_path.AkInflector::underscore($this->controller_name);
$this->controller_path = 'controllers'.DS.$this->underscored_controller_name.'_controller.php';
$this->class_name = str_replace('/', '_', $this->class_name_arg);
}else{
$this->underscored_controller_name = AkInflector::underscore($this->class_name);
$this->controller_path = 'controllers'.DS.$this->underscored_controller_name.'_controller.php';
}
$this->assignVarToTemplate('class_name', $this->class_name);
}
示例10: generate
public function generate()
{
$destination_path = AK_APP_LIB_DIR . DS . 'generators' . DS . $this->generator_name;
$this->assignVarToTemplate('class_name', AkInflector::camelize($this->generator_name));
$this->save($destination_path . DS . $this->generator_name . '_generator.php', $this->render('generator'));
$this->save($destination_path . DS . 'templates' . DS . 'template.tpl', $this->render('template'));
$this->save($destination_path . DS . 'USAGE', $this->render('usage'));
}
示例11: Test_of_camelize
function Test_of_camelize()
{
foreach ($this->CamelToUnderscore as $camel => $underscore) {
$this->assertEqual($camel, AkInflector::camelize($underscore));
}
foreach ($this->CamelWithModuleToUnderscoreWithSlash as $camel => $underscore) {
$this->assertEqual($camel, AkInflector::camelize($underscore));
}
}
示例12: trim
function &recognize($Map = null)
{
AK_ENVIRONMENT != 'setup' ? $this->_connectToDatabase() : null;
$this->_startSession();
$this->_enableInternationalizationSupport();
$this->_mapRoutes($Map);
$params = $this->getParams();
$module_path = $module_class_peffix = '';
if (!empty($params['module'])) {
$module_path = trim(str_replace(array('/', '\\'), DS, Ak::sanitize_include($params['module'], 'high')), DS) . DS;
$module_shared_model = AK_CONTROLLERS_DIR . DS . trim($module_path, DS) . '_controller.php';
$module_class_peffix = str_replace(' ', '_', AkInflector::titleize(str_replace(DS, ' ', trim($module_path, DS)))) . '_';
}
$controller_file_name = AkInflector::underscore($params['controller']) . '_controller.php';
$controller_class_name = $module_class_peffix . AkInflector::camelize($params['controller']) . 'Controller';
$controller_path = AK_CONTROLLERS_DIR . DS . $module_path . $controller_file_name;
include_once AK_APP_DIR . DS . 'application_controller.php';
if (!empty($module_path) && file_exists($module_shared_model)) {
include_once $module_shared_model;
}
if (!is_file($controller_path) || !(include_once $controller_path)) {
defined('AK_LOG_EVENTS') && AK_LOG_EVENTS && $this->Logger->error('Controller ' . $controller_path . ' not found.');
if (AK_ENVIRONMENT == 'development') {
trigger_error(Ak::t('Could not find the file /app/controllers/<i>%controller_file_name</i> for ' . 'the controller %controller_class_name', array('%controller_file_name' => $controller_file_name, '%controller_class_name' => $controller_class_name)), E_USER_ERROR);
} elseif (@(include AK_PUBLIC_DIR . DS . '404.php')) {
$response = new AkTestResponse();
$response->addHeader('Status', 404);
return false;
//exit;
} else {
//header("HTTP/1.1 404 Not Found");
$response = new AkResponse();
$response->addHeader('Status', 404);
return false;
//die('404 Not found');
}
}
if (!class_exists($controller_class_name)) {
defined('AK_LOG_EVENTS') && AK_LOG_EVENTS && $this->Logger->error('Controller ' . $controller_path . ' does not implement ' . $controller_class_name . ' class.');
if (AK_ENVIRONMENT == 'development') {
trigger_error(Ak::t('Controller <i>%controller_name</i> does not exist', array('%controller_name' => $controller_class_name)), E_USER_ERROR);
} elseif (@(include AK_PUBLIC_DIR . DS . '405.php')) {
exit;
} else {
$response = new AkResponse();
$response->addHeader('Status', 405);
return false;
//header("HTTP/1.1 405 Method Not Allowed");
//die('405 Method Not Allowed');
}
}
$Controller =& new $controller_class_name(array('controller' => true));
$Controller->_module_path = $module_path;
isset($_SESSION) ? $Controller->session =& $_SESSION : null;
return $Controller;
}
示例13: _instantiateAdapterClass
private function _instantiateAdapterClass($type, $settings = array())
{
$class_name = strstr($type, 'Adapter') ? $type : 'AkOdb' . AkInflector::camelize($type) . 'Adapter';
if (!class_exists($class_name) && !$this->_includeAdapterClass($settings['type'])) {
trigger_error(Ak::t('Could not find document adapter class %class', array('%class' => $class_name)), E_USER_ERROR);
return false;
}
$this->_Adapter = new $class_name($settings);
return true;
}
示例14: __construct
public function __construct($client_driver)
{
$client_driver = AkInflector::underscore($client_driver);
if (in_array($client_driver, $this->_available_drivers)) {
$client_class_name = 'Ak' . AkInflector::camelize($client_driver) . 'Client';
require_once AK_ACTION_PACK_DIR . DS . 'action_web_service' . DS . 'clients' . DS . $client_driver . '.php';
$this->_Client = new $client_class_name($this);
} else {
trigger_error(Ak::t('Invalid Web Service driver provided. Available Drivers are: %drivers', array('%drivers' => join(', ', $this->_available_drivers))), E_USER_WARNING);
}
}
示例15: _preloadPaths
function _preloadPaths()
{
$this->api_name = AkInflector::camelize($this->api_name);
$this->api_class_name = $this->api_name . 'Api';
$this->assignVarToTemplate('api_class_name', $this->api_class_name);
$this->service_class_name = $this->api_name . 'Service';
$this->assignVarToTemplate('service_class_name', $this->service_class_name);
$this->api_path = AK_APIS_DIR . DS . AkInflector::underscore($this->api_class_name) . '.php';
$this->underscored_service_name = AkInflector::underscore($this->api_name);
$this->service_path = AK_MODELS_DIR . DS . $this->underscored_service_name . '_service.php';
}