プロセス|プロジェクト
これまでPHPを学んだことがなかったのですが、最近ちょうどプロジェクトで使いたくなったので、PHPをやりながら学ぶことにしました
1 SQL文では、left(text, 20) テキスト text 最初の 20 文字のみを取得します;
2 ページングとして limit fromRecord、RecordNum を使用できます。たとえば、limit 0,30 は、最初のレコードから開始して 30 レコードを走査することを意味します;
3 2 つのテーブル間の接続は次のとおりです。x を使用して table1 join table2 (x は 2 つのテーブルの共通フィールドです)、または table1 join table2 on table1 です。 ,$output); // まずクエリ文字列を配列に保存 $output
$page = $output['page'] // 次に変数名に従ってインデックスを付けます
5 日付の比較php の関数は実際には文字列の比較です;
6 mysql の日付型データは次のようになります: 2000-02-03, 2002.02.03 , 2002.2.3, 02.02.03, 02.2.3、つまり、月と日が必要であり、それらは「-」または「.」で区切られている必要があります。
7 data() を使用して時刻を取得するときにタイムゾーンの問題が発生します。php.ini のデフォルト設定が GTM US タイムゾーンであるため、時間が 8 時間短くなることがわかりました。 : php .ini:
[Date]
; Date_Default_TimeZone_set("PRC");
8 一定期間、デバッグ時に常に「不足しています」と表示されました。データベース内の intval($_POST['consumeType']) の問題を解決するのに長い時間がかかりました。このフィールドは varchar(50) です。本文で intval 関数を使用しませんでした。 IDが1,2なのでzengsongテーブル…整数とchar型は相互に変換できますが、他の2つのテーブルではA5AやSP07 -01などになっていますが、どうやってint型に変換するのでしょうか?
intval 関数の宣言を見てみましょう: intval 関数は、変数の整数値を取得するために使用されます: int intval (mixed var [, intbase]) を返します。特定の基数変換を使用した変数 var の整数値 (デフォルトは 10 進数)。 var には任意のスカラー型を指定できます。 intval() は配列またはオブジェクトでは使用できません。 9 もう一つの不可解な問題、ユーザー名 1 でログインできますが、'bo' でログインするとシステムがエラーを起こします: 実行時間エラー: ")" が欠落しています、nnd と表示されます。確認したところ、SQL文の変数の型とデータベースの変数の型が一致していないことが判明しました 10 phpで浮動小数点数を整数に変換する際、数値は四捨五入されます(小数点以下の桁は以下のとおりです)。破棄されました)。 11 mysqlのinsert文で、自動インクリメントフィールドの場合は、代わりに(NULL)を使用してください。 12 php 中国語の文字化け??? 問題の解決策: mysql_query("set names 'gb2312'"); を追加するか、 mysql_connect の後に上記のステートメントを追加せずに utf8 エンコーディングを使用します。 様々な文字エンコーディングの変換を実現できる関数 iconv("GBK", "UTF8", "String"); もあります。