Inflector :: humanize ($ key) преобразует дату присоединения в дату присоединения - PullRequest
1 голос
/ 31 августа 2009

У меня есть форма, и я отправляю ее, используя

function submit($formid = null, $fillerid = null){
    $this->data['Result']['form_id'] = $formid;
    $this->data['Result']['submitter_id'] = $fillerid;
    $this->data['Result']['submitter'] = $this->Session->read('filler');
    echo "submitter: " . $this->Session->read('filler');
    $results = $this->Form->hasResults($this->data);
    //echo http_build_query($_POST);

    if(empty($results)){
        foreach($_POST as $key => $value):
            if(is_array($value)){
                $value = implode('', $_POST[$key]);
                $this->data['Result']['value'] = $value;
            }else{
                $this->data['Result']['value'] = $value;
            }
            $this->data['Result']['form_id'] = $formid;
            $this->data['Result']['submitter_id'] = $fillerid;
            $this->data['Result']['label'] = Inflector::humanize($key);

            $this->data['Result']['submitter'] = $this->Session->read('filler');
            $this->Form->submitForm($this->data);
        endforeach;

        $this->Session->setFlash('Your entry has been submitted.');
    }
}

У меня ФОРМА КАК

  <form method="post" action="/FormBuilder/index.php/forms/submit/1/4" id="ResultSubmit"> 

  <div class="input text"><label for="1">Firstname</label><input type="text" value="" style="width: 300px;" id="1" name="Firstname"/></div>  <br/>




  <div class="input text"><label for="2">Last Name</label><input type="text" value="" style="width: 300px;" id="2" name="Last Name"/></div>  <br/>




  <div class="input text"><label for="3">Age</label><input type="text" value="" style="width: 200px;" id="3" name="Age"/></div>  <br/>
       <center>  <span id="errmsg3"/> </center>



  <div class="input textarea"><label for="4">Address</label><textarea style="height: 300px;" id="4" rows="6" cols="30" name="Address"/></div>  <br/>



  <div class="input text"><label for="5">Date Of Joining</label><input type="text" value="" style="width: 300px;" id="5" name="Date of joining"/></div><br/>


  <div class="input text"><label for="6">Email - Id</label><input type="text" value="" style="width: 300px;" id="6" name="Email - id"/></div>  <br/>




  <div class="input text">
<label for="7">Personal Number</label><input type="text" value="" maxlength="3" style="width: 30px;" id="7" name="Personal Number[]"/><input type="text" value="" style="width: 30px;" maxlength="3" id="7-1" name="Personal Number[]"/><input type="text" value="" style="width: 70px;" maxlength="4" id="7-2" name="Personal Number[]"/></div>

 <span id="errmsg7"/> 
  <br/>




  <div class="input select"><label for="8">Gender</label><select id="8" name="Gender">

MaleFemale

  <div class="input text"><label for="9">Official Number</label><input type="text" value="" style="width: 200px;" id="9" name="Official Number"/></div><br/>


     <div class="input select"><label for="10">Experience</label><select id="10" name="Experience">
    <option value="Fresher">Fresher</option><option yrs="" 5="" value="Below">Below 5 Yrs</option><option yrs="" 10="" value="Above">Above 10 yrs</option></select></div><br/>



на самом деле мой вход имеет имена как

  • Имя
  • Фамилия
  • Возраст
  • Адрес
  • Дата присоединения
  • E-mail - id
  • Личный номер
  • Пол
  • Официальный номер

Но когда я использую Inflector :: humanize ($ key) для сохранения имен, в которых есть пробельные символы, которые они преобразовали, например, в Дата присоединения, т. Е. O и J становятся заглавными буквами ... Но мне нужно их сохранить как, например, Дата присоединения .. Как это сделать ???

1 Ответ

0 голосов
/ 31 августа 2009

Вы должны написать свой собственный метод для достижения этой цели. Если вы хотите использовать заглавные буквы для первого символа строки, вы можете взять код Inflector :: humanize () и заменить ucwords () на ucfirst ():

function humanize($lowerCaseAndUnderscoredWord) {  
    return ucfirst(str_replace("_", " ", $lowerCaseAndUnderscoredWord));  
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...