聯系官方銷售客服
1835022288
028-61286886
獲取標題轉拼音首字母,如果字段為空,自動獲取
public function edit() { if (IS_POST) { $post = \Phpcmf\Service::L('input')->post('data'); $py = \Phpcmf\Service::L('pinyin'); // 拼音轉換類 if(!$post['py']){ $post['py']=substr($py->result($post['title']), 0, 1); } } $this->_Admin_Edit(); }
打印$post,成功獲取到標題拼音首字母,但是無法寫入數據庫?
改成
然后入庫時讀取這個$_POST['py']變量在寫進去存儲
回復@官方研發技術-陳老師 感謝回答
我修改后
再次打印出來的var_dump($_POST);依然為空
var_dump($_POST); 后,下面應該有 [py] = m 的結果的,你拉下來看看就知道了。
回復@官方研發技術-陳老師
然后入庫時讀取這個$_POST['py']變量在寫進去存儲
這里的變量在寫進去存儲是要怎么寫?
回復@張建 如果單單是為了獲取拼音首字母可以重寫content類函數
新建 dayrui/App/News/Models/Content.php
<?php namespace Phpcmf\Model\News;
class Content extends \Phpcmf\Model\Content
{
// 提交之前
public function _content_post_before($id, $data, $old)
{
// 編輯
if ($id)
{
$data[1]['py'] = substr(\Phpcmf\Service::L('pinyin')->result($data[1]['title']), 0, 1);
}
return $data;
}
}
可能鉤子也行,沒試過
參考文檔:《模塊內容發布之前》
最終的解決是