2011-11-18 16 views
11

我有此腳本:產生PHP類在bash

#!/bin/bash 

    if [[ -z "$1" ]] ; then 
     echo "Class is required" 
     exit 1; 
    fi 

    if [[ -z "$2" ]] ; then 
     package="Default" 
    else 
     package=$2; 
    fi 

    echo "<?php 
    /** 
    * $1.class.php 
    * 
    * Vcard class file. 
    * @name  Project 
    * @author  Author 
    * @link  http://www.domain.com 
    * @copyright Copyright © 2011 
    * @package  $package 
    * @version  1.0 
    */ 

    /** 
    * The main $1 class 
    * @package $package 
    */ 
    class $1 { 

     /** 
     * Constructor setup. 
     */ 
     public function __construct() { 
     } 

     /** 
     * Destructor setup. 
     */ 
     public function __destruct() { 
     } 
    } 
    " > $1.class.php 

    php -l $1.class.php 
    echo "Done"; 

,如果我這樣做:

./generate.sh my_class它創建了my_class一切。我怎樣才能修改:MyClass?

我需要使用MyClass作爲文件名和類名等......稍後在代碼中使用參數(在本例中爲my_class)用於其他目的。

謝謝

+0

說'./generate.sh MyClass'。 –

+0

......爲什麼? – Joe

回答

15

如果你想確保它被稱爲MyClass的,你可以在驗證之後添加這個地方:

fname=$(IFS='_'; for i in ${1,,}; do echo -n ${i^}; done) 

並使用$fname.class.php

0

看起來它已經爲此設置了。只需執行./generate.sh MyClass