問題タブ [array-key]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
206 参照

php - 配列要素にキーがありますか

foreach ループの配列要素にキーがあるかどうかを確認するにはどうすればよいですか?

いくつかのコード:

編集#1


$arr2自動化されたインデックスキーとしても認識しています。自動化されているかどうかを知る必要があります。

編集#2


私の使い方は簡単です。
関数では、新しい配列を作成し、関数呼び出しによって提供された場合$keyは new として使用します。$keyまたは、関数呼び出しで省略された場合$valueは new として。$key

各要素にキーの使用を強制できることはわかっていますが、コードの一部では、データ構造自体が非常に動的です* - そして私は可能な限り柔軟に保とうとしています.

*他のコードを作成するコード、...を作成するコードなど。

0 投票する
2 に答える
132 参照

arrays - 配列内のキーへのアクセス

以下の JSON 構造は、検索結果の形式を示しています。詳細はこちら

以下は、PHPファイルの値を取得するために私が従っているコードです。

ここからタイトルタグを取得できますが、サムネイルの URL 文字列値を取得する方法。を使ってやってみまし$video['snippet']['thumbnails']['key']['url']た。

編集:コードを直接実行して、これを応答として取得しました。今、私は として url 値にアクセスしようとしました$video['snippet']['thumbnails']['high']['url']。まだ運が悪い!! それは言い Warning: Illegal string offset 'high'ます。

0 投票する
5 に答える
91 参照

php - PHPの配列キー

私はこのコードを理解しようとしています:

出力:

インデックス 4 と 5 の両方にあるため、なぜそうなのか[4] => 2 and why [5] => 3と思ってい[4] => 4 and [5] => 5ます。この配列で正確に何が起こっているのかについて少し混乱しています。可能であれば、誰かが私を正しい方向に向けることができます。ありがとう.

0 投票する
2 に答える
372 参照

php - 単体テスト: PHP を壊さない無効な配列キーを指定します。可能?

私は小さなクラスの単体テストに取り組んでいます。私はこのクラスを使用して PHPUnit に取り掛かり、将来私が作成するより大きなコードを適切にテストできるようにしています。

テストしようとしている次のコードを検討してください。

以下は実際のテストコードです。

問題は、このテスト関数は、true何度返そうとしても常に返されることfalseです。null 値、300 文字以上のキー、空の配列、さらには新しいオブジェクトのインスタンスを指定しようとしました。いずれの場合も、PHP は中断するか、なんらかの警告をスローします。PHP が壊れない場合、私の値は、PHP が配列キーで受け入れる何かに変換され、$this->assertFalse()..

可能な限り多くのコード カバレッジを実現したいと考えています。

私の質問は、現在のコードを考えると、これらのメソッドがfalse通常の操作で戻るかどうかです。

私はテキストを追加しているので(これは管理目的です)、私が何を与えるかに関係なく、PHPが受け入れるある種のキーを常に提供していると考えています$id

何かご意見は?

前もって感謝します!

0 投票する
2 に答える
507 参照

php - PHP 配列のキーが特定の数値範囲内で負の値に変化する

偶然にも、PHP 配列とそのキーに関して非常に奇妙な動作に遭遇しました。この PHP 配列の作成を考えてみましょう。

どういうわけか、配列キーの値がまったく異なる負の数に変更されました。これにより、まだ決定的ではないさらなる調査が行われました。
以下の例では、数値範囲 2250572300 と 2250572500 の間でループします。時間がないので、この現象が発生し始める番号を特定できませんでした。これは、大きな範囲の数値をループするメモリが不足しているためです。2100000000 から 4300000000 の間のどこかにあると思います。

私の質問は次のとおりです。これがどのように、なぜ起こっているのか、そして問題を解決するために現在行われていることはありますか?

基本的に、これは PHP 内の主要な設計上の欠陥であり、配列内の数値 (例: サプライヤー、請求書、アイテム番号など) を扱う場合、PHP が役に立たなくなる可能性があります。

ありがとう

0 投票する
2 に答える
133 参照

php - カウントに達したらキーをリセット

そのため、配列から一度に 4 つのキーだけを取得し、4 番目のキーに到達した後にキー カウントを 0 にリセットしようとしています (配列は 0 から始まるため、実際にはキー #3)。次に例を示します。

unset($key['0'])、unset($ket['1']) などを使用してみましたが、うまくいきませんでした。array_shift を使用してみましたが、うまくいかないようです。4カウント後にキーパターンをリセットしたい。その理由は、ループされた 4 番目のキーで、「ブロック」(ブロックには 4 つのキーが含まれる) を取得する挿入を実行する必要があるためです。次のようなものです。

4回目のカウント後にキーをリセットするのに苦労しています。誰かが私が間違っていることや欠けていることについての指針を提供できますか? ありがとう