PHP implode
$array = array("おはよう", "こんにちは", "こんばんは");
var_dump(implode(" / ", $array));
string(48) "おはよう / こんにちは / こんばんは"
配列を文字列で連結する。1つにする。
PHP $_SERVER['HTTP_USER_AGENT']
$_SERVER['HTTP_USER_AGENT']
ブラウザの種類やOSバージョンなどを表示する。
iPhoneやAndroidがわかる。
PHP print_r
print_r("文字列" [,bool 返り値オプション]);
わかりやすい形式で変数の値に関する情報を表示する。
返り値オプションは書いても書かなくても大丈夫。trueなら画面に表示せず変数に格納する。falseなら画面に表示し変数には格納しない。デフォルトはfalse。
$test = print_r("aaa", true);
var_dump($test);
結果
string(3) "aaa"
preg_match
preg_match
正規表現によるマッチング。特定の文字列を含むかチェック。マッチしたら1を返す。マッチしなかったら0を返す。
引数は(パターン, 対象)
if (pregmatch('/ab/', 'abcde')) {
文字列あり
}
if (!pregmatch('/ab/', 'abcde')) {
文字列なし
}
正規表現を使わない場合はstrposかstrstr。
strpos:該当する文字列が無ければfalseを返す。見つかったら位置を数値で返す。
if (strpos('abcde', 'bc') !== false) {
//文字列あり
}
if(strpos('abcde', 'bc') === false) {
//文字列なし
}
strstr
久しぶりにphpを使うためにハマったところ。
久しぶりにphpを使うためにハマったところ。
/etc/apache2/httpd.confのDocumentRootを編集
DocumentRootを編集したら、直下の
XcodeのSize Inspector設定
View
Show
Frame Rectangle(フレーム矩形):影を含むオブジェクトの矩形サイズが「Width」と「Height」に表示される。ドロップシャドウ込み。
Alignment Rectangle(比率矩形):オブジェクト自体の矩形サイズが「Width」と「Height」に表示される。ドロップシャドウ抜き。
矩形・・・正方形や長方形
UIObjectに影を持つものはほとんど無いのでデフォルトのFrame Rectangleで問題ない。
X:左端を支点とした左右の位置。
Y:上部を支点とした上下の位置。
Width:オブジェクトの幅。
Height:オブジェクトの高さ。
Arrange Position View
Center Horizontally In Container:オブジェクトの位置を左右の中心に置く。
Center Vertically In Container:オブジェクトの位置を上下の中心に置く。
Fill Container Horizontally:オブジェクトを左右いっぱいに引き延ばす。
Fill Container Vertically:オブジェクトを上下いっぱいに引き延ばす。
Autoresizing
Layout Margins
Default:
Explicit(明示的な):
Preserve Superview Margins(Superviewのマージンを保持):
Superviewは外枠いっぱいを囲ったView。
Leading Space to Suverview:Superviewから右に伸びるConstraint
Trailling Space to:Superview:Superviewから左に伸びるConstraint
SubviewはSuperviewの中のオブジェクト。
Marginsはオブジェクトを配置する時に使う幅。
Follow Readable Width:
Constraint(制約):右下にあるAdd New Constraintから追加可能。
Constraintを追加すると、Size Inspectorの様子が変わる。
つくるアプリ
GCP
gRPC
今ほどgRPCが必要とされている時代はない - AltPlus Tech Blog
golang
Unity C#
Application LoaderでERROR ITMS-90161: "Invalid Provisioning Profile. みたいなエラーが出た
ERROR ITMS-90161: "Invalid Provisioning Profile. 的なエラーが出た。
このqiitaで解決
qiita.com
解決したのはSigningのAutomatically manage signingのチェックを外したためかも?
XcodeのPlaygroundが便利
Xcodeを開いて
FIle > New > Playground
コンパイルせず即座に確認できる。
こちらのブログを参考にテスト
Swift実践入門 〜 今からはじめるiOSアプリ開発! 基本文法を押さえて、簡単な電卓を作ってみよう - エンジニアHub|若手Webエンジニアのキャリアを考える!
class MyApp { //親クラス class Shape { var name: String init(name: String) { self.name = name } } //子クラス 四角形 class Rectangle: Shape { var width: Double var height: Double init(name: String, width: Double, height: Double) { self.width = width self.height = height super.init(name: name) } func area() -> Double { return width * height } } //子クラス 三角形 class Triangle: Shape { var bottom: Double var height: Double init(name: String, bottom: Double, height: Double) { self.bottom = bottom self.height = height super.init(name: name) } func area() -> Double { return bottom * height / 2.0 } } } var square = MyApp.Rectangle(name: "四角形!", width: 15, height: 20) print(square.name) print(square.area())
Swift クロージャー
クロージャーは自分を囲むスコープにある変数を参照する関数
関数をインスタンス化したら、それはクロージャー
ラムダ式や無名関数にもなる
関数閉包→クローズ→クロージャー?
クロージャーの外に書いてある変数を操作(キャプチャ)できる
C#のRequiredArgumentとは
RequiredArgument
特定の引数が必須であることを示す
[RequiredArgument] //string型の引数が必要 public InArgument<string> BookmarkName { get; set; }
XAML
Extensible Application Markup Language (XAML)
アプリケーション UI (コントロール、図形、テキスト、その他画面上に表示されるコンテンツなど) の作成に利用できる宣言型言語
visual studioのプロジェクトで出てきた
XMLベースであるためXMLの規則に従う
つまりボタン等の位置や大きさを決める言語